Pandas:从数据和列创建数据帧

2024-04-26 00:47:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我问的一定很简单,但我真的看不出来。。。。:(

我有一个数组

data = [[1, 2, 3], 
        [4, 5, 6],
        [7, 8, 9],
        [10,11,12]]

我想把它放到一个数据帧中。
我知道df = pd.Dataframe(data, columns={'col1', 'col2', 'col3'})

目标:

col1 col2 col3
1    2    3
4    5    6
7    8    9
10   11   12

但我得到了:

col3 col1 col2
1    2    3
4    5    6
7    8    9
10   11   12

(注意列名和数据之间的差异)

我知道我可以在创建数据帧时重新排列列名顺序,但我正在尝试理解它是如何工作的。你知道吗

是我做错了什么,还是这是正常的行为?(为什么?)你知道吗


Tags: columns数据目标dataframedfdata顺序数组
2条回答

必须传递tuplelist作为columns属性的值。你知道吗

在您的示例中,您使用的是set列,这是一个无序的集合。你知道吗

df = pd.DataFrame(data, columns=['col1', 'col2', 'col3'])

您使用的是{set}列,它不是有序集合(字典也不是)。 试着用(tuple),o简单地用[list]

df = pd.Dataframe(data, columns=['col1', 'col2', 'col3'])

相关问题 更多 >