构建Pandas Dataframe:处理为列还是行?

时间:2016-11-23 11:44:47

标签: python pandas numpy

我发现很难记住Pandas如何决定在不同时间将列表视为列或行。

易于记忆的一般规则是什么?

示例:

pd.DataFrame(data=[['x','y','z'],['a','b','c']])

x y z
a b c

pd.DataFrame(data={'A':['x','y','z'],'B':['a','b','c']})

x a
是b
z c

2 个答案:

答案 0 :(得分:2)

df = pd.DataFrame(data={'A':['x','y','z'],'B':['a','b','c']}) 是使用熊猫的最佳方式。这意味着' A'是列标题和引用,[' x',' y',' z']是该列的值。

您甚至可以根据df[df['A']=='x']进一步过滤行等,以便仅获取列中值为x的那些行' A'

答案 1 :(得分:0)

在第二种方法中,您可以将DataFrame.from_dict与参数orient

一起使用
a = pd.DataFrame.from_dict(data={'A':['x','y','z'],'B':['a','b','c']}, orient='index')
print (a)
   0  1  2
A  x  y  z
B  a  b  c

b= pd.DataFrame.from_dict(data={'A':['x','y','z'],'B':['a','b','c']}, orient='columns')
print (b)
   A  B
0  x  a
1  y  b
2  z  c

并首先完善解释EdChum in comment