【问题标题】:Removing words from csv-file's line in python3从python3中的csv文件行中删除单词
【发布时间】:2018-11-04 18:20:01
【问题描述】:

您如何读取 csv 文件并从中删除一部分,而保留该行的其余部分不变?

如果我有这样的一行:

Chicago,0.6,5.5,1.3,11.1,NewYork,0.0

而我的目标是这样结束:

0.6,5.5,1.3,11.1,0.0

我该怎么做?是否有可能只考虑数字?

【问题讨论】:

    标签: string python-3.x csv line


    【解决方案1】:

    可能不是很优雅的解决方案,但你可以试试这个:

    import pandas as pd
    
    def isnumber(s):
        """Return True if it is a number, otherwise return False."""
        try:
            float(s)
            return True
        except ValueError:
            return False
    
    df = pd.read_csv('/PATH/TO/FILE.csv', sep=',', header=None)
    df = df[df.applymap(isnumber)].dropna(axis='columns')
    
    df.to_csv('PATH/TO/OUTPUTFILE.csv', sep=',', header=None)
    

    重要提示:如果文件中有更多行,dropna 将删除所有非数字的列。

    【讨论】:

      猜你喜欢
      • 2018-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多