向pandas DataFrame
对象添加空列的最简单方法是什么?我偶然发现的最好的东西是这样的
df['foo'] = df.apply(lambda _: '', axis=1)
有没有一种不那么反常的方法?
发布于 2013-05-02 05:52:58
如果我理解正确的话,赋值应该填写:
>>> import numpy as np
>>> import pandas as pd
>>> df = pd.DataFrame({"A": [1,2,3], "B": [2,3,4]})
>>> df
A B
0 1 2
1 2 3
2 3 4
>>> df["C"] = ""
>>> df["D"] = np.nan
>>> df
A B C D
0 1 2 NaN
1 2 3 NaN
2 3 4 NaN
发布于 2017-05-16 16:08:56
一个更简单的解决方案是:
df = df.reindex(columns = header_list)
其中"header_list“是要显示的标头的列表。
列表中包含的、在数据帧中尚未找到的任何标头都将在下面添加空白单元格。
所以如果
header_list = ['a','b','c', 'd']
则c和d将被添加为具有空单元格的列
发布于 2019-07-31 22:59:15
我喜欢:
df['new'] = pd.Series(dtype='your_required_dtype')
如果您有一个空的数据帧,此解决方案可确保不会添加仅包含NaN
的新行。
指定dtype
并不是必须的,但是如果不指定,更新的Pandas版本会生成一个DeprecationWarning
。
https://stackoverflow.com/questions/16327055
复制相似问题