Python 将数据帧6x3转换为特殊数组9x2,选择要存储在数组中的数据帧元素
这里有一个dataframe的示例。我要存储的结果是: 我想选择数组的行数和列数,例如使用for循环。脚本将能够读取dataframe的每个元素(2行或3行),以存储在数组的一列中,然后从dataframe的最后一个元素+1重新启动,并存储在数组的第二列中Python 将数据帧6x3转换为特殊数组9x2,选择要存储在数组中的数据帧元素,python,arrays,pandas,dataframe,for-loop,Python,Arrays,Pandas,Dataframe,For Loop,这里有一个dataframe的示例。我要存储的结果是: 我想选择数组的行数和列数,例如使用for循环。脚本将能够读取dataframe的每个元素(2行或3行),以存储在数组的一列中,然后从dataframe的最后一个元素+1重新启动,并存储在数组的第二列中 感谢您将阵列一分为二,使用np.flant将2D阵列转换为1D,np.newaxis增加尺寸,然后使用np.hstack将其水平堆叠 array([[ 1, 4], [ 6, 9], [ 0, 1
感谢您将阵列一分为二,使用
np.flant
将2D阵列转换为1D,np.newaxis
增加尺寸,然后使用np.hstack
将其水平堆叠
array([[ 1, 4],
[ 6, 9],
[ 0, 1],
[ 2, 5],
[ 7, 10],
[ 1, 0],
[ 3, 5],
[ 8, 4],
[ 0, 100]])
输出
np.hstack((df[:3].values.flatten()[np.newaxis].T,df[3:].values.flatten()[np.newaxis].T))
将阵列一分为二,使用
np.flant
将2D阵列转换为1D,np.newaxis
增加尺寸,然后使用np.hstack
将其水平堆叠
array([[ 1, 4],
[ 6, 9],
[ 0, 1],
[ 2, 5],
[ 7, 10],
[ 1, 0],
[ 3, 5],
[ 8, 4],
[ 0, 100]])
输出
np.hstack((df[:3].values.flatten()[np.newaxis].T,df[3:].values.flatten()[np.newaxis].T))
您只需重塑和转置这些值:
array([[ 1, 4],
[ 6, 9],
[ 0, 1],
[ 2, 5],
[ 7, 10],
[ 1, 0],
[ 3, 5],
[ 8, 4],
[ 0, 100]], dtype=int64)
或者使用更好的语法(感谢@AndyL.的注意):
给出:
df.values.reshape(2,-1).T
您只需重塑和转置这些值:
array([[ 1, 4],
[ 6, 9],
[ 0, 1],
[ 2, 5],
[ 7, 10],
[ 1, 0],
[ 3, 5],
[ 8, 4],
[ 0, 100]], dtype=int64)
或者使用更好的语法(感谢@AndyL.的注意):
给出:
df.values.reshape(2,-1).T
df.values.reformate(2,-1).T
@AndyL:非常感谢。更好的语法。我用它编辑了我的帖子。谢谢,很简单:)@Andreapierno:请不要忘记接受其中一个答案,告诉未来的读者,在这个问题上你不再需要帮助。df.values.reforme(2,-1).T
@AndyL:非常感谢。更好的语法。我用它编辑了我的文章。谢谢,很简单:)@Andreapierno:请不要忘记接受其中一个答案,告诉未来的读者,在这个问题上你不再需要帮助。