python - Pandas:根据数据和列顺序创建数据框

标签 python pandas dataframe

我要问的一定很简单,但老实说我看不出来.... :(

我有一个数组,比方说

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

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

我知道我可以在创建数据框时重新排列列名顺序,但我想了解它是如何工作的。

我是做错了什么,还是正常行为? (虽然为什么?)

最佳答案

您正在使用 {set} 列,这不是有序集合(也不是字典)。 尝试使用 (tuple),或者只是一个 [list]

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

关于python - Pandas:根据数据和列顺序创建数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50150090/

相关文章:

python - 使用 Django Rest Framework 序列化查询集时的“ListSerializer”

java - 字符串时间复杂度

使用 inf 和 NaN 对 pandas 数据框进行排序

python - 以 Pandas Dataframe 作为值的字典的 JSON 格式

python - Pandas 不会 fillna() 到位

python - 运行多个命令直到不发生异常? (Python)

python - 阅读无限流-tail

python - Pandas:从系列创建 DataFrame

python - 逐行编辑 Pandas 数据框

python - 数据框透视而不对列名称进行排序?