我有一个简单的 txt 文件,我正在按如下方式读取它:
data=pd.read_csv("data1.txt",sep=',', header = None)
data.columns=['X1', 'Y']
当我打印这个时,我得到:-
X1 Y
0 6.1101 17.5920
1 5.5277 9.1302
2 8.5186 13.6620
3 7.0032 11.8540
4 5.8598 6.8233
现在我想在 X1 前面(左侧)插入一个列 X0 并将该列的值设置为 1。所以我添加了以下代码:-
data = data.insert(0,'X0',1)
print(type(data))
print(len(data))
但我收到以下错误消息:-
<class 'NoneType'>
TypeError: object of type 'NoneType' has no len()
问题是,我的 data.insert 正确吗?为什么该类型的数据帧是 NoneType。我在这里做错了什么?
最佳答案
您可以使用分配
,而不是使用就地操作的insert
data = data.assign(X0=1)[['X0'] + data.columns.tolist()]
print(data)
X0 X1 Y
0 1 6.1101 17.5920
1 1 5.5277 9.1302
2 1 8.5186 13.6620
3 1 7.0032 11.8540
4 1 5.8598 6.8233
关于python-3.x - Python pandas DataFrame 列插入调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42154169/