python - 摆脱没有标题的列

标签 python csv pandas

我正在尝试读取一个包含没有标题的列的 CSV 文件。目前,我的解决方案是

df = pd.read_csv("test.csv")
df = df[[col for col in df.columns if 'Unnamed' not in col]]

这看起来有点老套,如果文件中包含带有“未命名”一词的列,则会失败。有更好的方法吗?

最佳答案

read_csvusecols 参数函数接受一个可调用函数作为输入。如果您提供的函数对于不需要的列标题计算结果为 False,则这些列将被删除。

func = lambda x: not x.startswith('Unnamed: ')
df = pd.read_csv('test.csv', usecols=func)

我想这个解决方案与您原来的解决方案并没有根本的不同。

关于python - 摆脱没有标题的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45123470/

相关文章:

arrays - Swift 5 将文本文件读入 Int/Doubles 的二维数组

python - 将元组元素转换为字典

python在字符串中求解方程

python - 合并数据框的特定行并删除未使用的行

python-3.x - 将多个 csv 列合并为一列,同时重复标题

php - 使用php在mysql中加载csv文件时出错

python - 如何折叠 Pandas 数据框? (数据透视表)

python - 向量化 Pandas 列

python - Pandas:为什么附加到 float 和整数的数据帧比充满 NaN 的数据帧要慢

python - 使用 call() 执行 cat,在 python 中使用管道和重定向输出