我试图在 Python 中创建新的 Pandas DataFrame 时添加相同的列。我正在尝试执行以下操作:
我正在尝试使 DataFrame 的所有列位于同一列表之上。是否可以对整数列表(或更一般地,字符串/对象/等列表)执行此操作?
我尝试过使用数组、字典、列名列表。这部分是我能弄清楚的,但我想找出一种可扩展的方式来只传递一个列表。
column_names = array(['col0', 'col1', 'col2', 'col3'], dtype=object)
some_list = [int0, int1, int2]
df = pd.DataFrame(some_list, columns=column_names)
我想看到这样的东西:
col0 col1 col2 col3
0 int0 int0 int0 int0
1 int1 int1 int1 int1
2 int2 int2 int2 int2
最佳答案
IIUC,考虑不要将 list
用作变量(或任何其他保留关键字),因为 list
是内置函数,您将覆盖它。
l = [0, 1, 2]
df = pd.DataFrame(dict.fromkeys(column_names,l))
df
col0 col1 col2 col3
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
另一种方法
pd.DataFrame([l]*len(column_names),index=column_names).T
col0 col1 col2 col3
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
关于python - 在 Python 中为每一列使用相同的列表创建 Pandas DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55895843/