python-3.x - 为什么 df.drop 不删除列?
问题描述
我试图找出为什么 df.drop() 没有按预期工作。当我使用不存在的列标题运行 df.drop 时,它会引发错误。这运行不会导致任何错误,我已经复制粘贴了列的标题,所以我确定它是正确的标题。
也许我误解了它的工作原理,但我希望 df.drop() 删除该列,以便只保留索引和其他 2 列。
print(old_df.head(3))
print(old_df.keys())
old_df.drop('Unnamed: 0',axis=1)
print(old_df.head(3))
Unnamed: 0 Timestamps Bodies
0 0 2020-04-21 01:19:09 Body1
1 1 2020-04-21 01:19:30 Body2
2 2 2020-04-21 01:21:35 Body3
Index(['Unnamed: 0', 'Timestamps', 'Bodies'], dtype='object')
Unnamed: 0 Timestamps Bodies
0 0 2020-04-21 01:19:09 Body1
1 1 2020-04-21 01:19:30 Body2
2 2 2020-04-21 01:21:35 Body3
解决方案
我写了这个问题,然后立即找到了答案。
print(old_df.head(3))
print(old_df.keys())
new_df = old_df.drop('Unnamed: 0',axis=1) # The original dataframe remains, but a new df will have all the original columns but not the dropped ones.
print(new_df.head(3))
推荐阅读
- anylogic - AnyLogic - 两边都用于新的存储对象
- tensorflow - keras.utils.layer_utils 和 keras.utils.generic_utils 等效于 tf.keras
- for-loop - VBScript:根据文件名中的字符串将文件移动到不同的文件夹(对于每个循环)
- android - Cipher.init 在 BiometricPrompt 成功回调中失败并出现 UserNotAuthenticatedException
- c# - 计算已缩放和调整大小的裁剪矩形
- qt - qt 版本与 qbs 不兼容
- angular - 如何访问 Guard 中的 Angular 服务?
- python - Python函数捕获变量
- java - 从Java中的Xml获取元素内的评论元素
- python - 用来自其他数据帧的值有效地替换 Pandas 数据帧