繁体   English   中英

如何将列表中的值插入到 DataFrame 列?

[英]How can I insert values from a list to DataFrame columns?

我需要将列表中的值插入 df 中的相应列(第一个值插入第一列,第二个值插入第二列等),但无法执行此操作。 使用下一个代码值仅粘贴到行,而不是列。

list1 = pd.Series(list1) 
pd.concat([df_sum, list1])

df_sum.append(list1)给出相同的结果。 那么有什么建议吗?

代码例如:

df_sum = pd.DataFrame(columns = ['russian language', 'english language', 'mathemathics', 'geometry', 'algebra', 'computer science', 'history',
                                 'geography', 'biology', 'social science', 'chemistry', 'physics'])
list1 = [28323,
 29302,
 9570,
 22014,
 18359,
 20514,
 25139,
 24678,
 23215,
 20640,
 19904,
 21494]

快速回答:我会使用字典按索引编译

dict_temp = {}
for i, col in enumerate(df_sum.columns.values):
 dict_temp[col] = [list1[i]]

pd.DataFrame.from_dict(dict_temp)

或者那样做。 但是要看你以后的目的。 我想你想在某个时候添加更多列表?

for i, col in enumerate(df_sum.columns.values):
 df_sum.at[0, col] = list1[i]

但可能有更好的解决方案

您可以通过使用 list 和 loc 来实现

to_append = list(list1)
df_length = len(df_sum)
df_sum.loc[df_length] = to_append
pd.DataFrame(data=df_sum)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM