我想一个矩阵转换成大熊猫的数据帧:如何矩阵转换为大熊猫数据帧
matrixA={}
matrixA[0,0]='a'
matrixA[0,1]='b'
matrixA[1,0]='c'
matrixA[1,1]='d'
像这样:
import pandas as pd
pd.DataFrame(matrixA)
我得到一个错误。
我想一个矩阵转换成大熊猫的数据帧:如何矩阵转换为大熊猫数据帧
matrixA={}
matrixA[0,0]='a'
matrixA[0,1]='b'
matrixA[1,0]='c'
matrixA[1,1]='d'
像这样:
import pandas as pd
pd.DataFrame(matrixA)
我得到一个错误。
正如已经说过的,你不是创建一个矩阵,而是一个python dictionary。然而,一个字典可以作为参数来创建一个数据帧,但是您颠倒了索引顺序。
import pandas as pd
matrixA={}
matrixA['a']=[0,0]
matrixA['b']=[0,1]
pd.DataFrame(matrixA)
a b
0 0 0
1 0 1
此外,您可以使用numpys矩阵
import numpy as np
a = np.matrix('1 2; 3 4')
pd.DataFrame(a)
0 1
0 1 2
1 3 4
我用这个[链接](http://stackoverflow.com/questions/6667201/how-to-定义 - 二维阵列式的Python) “如果你想要的是一个二维的容器,以便容纳一些元素,你可以方便地使用,而不是一本字典: ‘矩阵= {}’ 然后你就可以do: 'Matrix [1,2] = 15' 'print Matrix [1,2]' 这是可行的,因为1,2是一个元组,并且您将它用作索引字典的键。 “ 所以,现在我想保存我在DataFrame中保存的数据 使用内置函数是可行的吗? – Hangon 2014-11-06 12:40:31
那么你引用的答案是有点在你想要做的事情的背景中,Pandas DataFrame init不能处理这样的字典(因为你应该接受的错误表示),除此之外,我不认为这是一个真正pythonic的方式来使用字典 – greole 2014-11-06 12:49:17
感谢greole的帮助!我会尽量远离这种下次使用“dict”的方式,现在我将使用2个循环将这个“dict”的值传递给DataFrame。 – Hangon 2014-11-06 12:53:10
嗯,我在想,如果我们可以使用Python的多维数组。是的,你可以使用python矩阵(如python官方文档中提到的)或多维数组,并将其转换为pandas DataFrame。
import pandas as pd
matrix = [
["a", 1],
["b", 2]
]
pd.DataFrame(matrix)
0 1
0 a 1
1 b 2
要创建一个字典,而不是一个 “矩阵” 读: 10分钟大熊猫 – ngulam 2014-11-06 12:01:57