当前位置:  开发笔记 > 编程语言 > 正文

将列表中零值的多个列添加到Pandas数据框中

如何解决《将列表中零值的多个列添加到Pandas数据框中》经验,为你挑选了1个好方法。

说我有一个数据框

id col1 col2
1  1    foo
2  1    bar

列名列表

l = ['col3', 'col4', 'col5']

如何在数值为零的情况下向数据框添加新列?

id col1 col2 col3 col4 col5
1  1    foo     0    0    0
2  1    bar     0    0    0

Thtu.. 9

您可以尝试直接分配(假设您的数据框名为df):

for col in l:
    df[col] = 0

或者使用DataFrame的assign方法,如果l可以包含值,数组或任何pandas Series构造函数,这是一种稍微简洁的方法.

# create a dictionary of column names and the value you want
d = dict.fromkeys(l, 0)
df.assign(**d)

Pandas关于该assign方法的文档:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.assign.html



1> Thtu..:

您可以尝试直接分配(假设您的数据框名为df):

for col in l:
    df[col] = 0

或者使用DataFrame的assign方法,如果l可以包含值,数组或任何pandas Series构造函数,这是一种稍微简洁的方法.

# create a dictionary of column names and the value you want
d = dict.fromkeys(l, 0)
df.assign(**d)

Pandas关于该assign方法的文档:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.assign.html

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有