我能够搜索显示此错误消息“原因”的建议,但无法解决该问题-
每次我尝试通过在2个现有列中串联字符串值来向pandas数据帧添加新列时遇到此问题。
例如:
wind['timestamp'] = wind['DATE (MM/DD/YYYY)'] + ' ' + temp['stamp']
如果第一个项目和第二个项目与''合并为单独的数据帧/系列,则可以使用
。这些尝试是将日期和时间合并到同一列中,以便它们被熊猫库识别为日期时间戳。
我不确定我是错误使用命令还是熊猫库功能在内部受到限制,因为它会不断返回duplicate axis
错误消息。我知道后者极不可能哈哈哈...
我能听到一些快速简便的解决方案吗?
我的意思是,我认为数据帧中列值之间的加/减以及所有这些运算将非常容易。在表上也可以看到它应该不难吗?
答案 0 :(得分:1)
系列之间的操作需要无重复的索引,否则Pandas不知道如何在计算中对齐值。当前您的数据不是这种情况。
如果确定序列按位置对齐 ,则可以在每个数据帧上调用reset_index
:
wind = pd.DataFrame({'DATE (MM/DD/YYYY)': ['2018-01-01', '2018-02-01', '2018-03-01']})
temp = pd.DataFrame({'stamp': ['1', '2', '3']}, index=[0, 1, 1])
# ATTEMPT 1: FAIL
wind['timestamp'] = wind['DATE (MM/DD/YYYY)'] + ' ' + temp['stamp']
# ValueError: cannot reindex from a duplicate axis
# ATTEMPT 2: SUCCESS
wind = wind.reset_index(drop=True)
temp = temp.reset_index(drop=True)
wind['timestamp'] = wind['DATE (MM/DD/YYYY)'] + ' ' + temp['stamp']
print(wind)
DATE (MM/DD/YYYY) timestamp
0 2018-01-01 2018-01-01 1
1 2018-02-01 2018-02-01 2
2 2018-03-01 2018-03-01 3