从 python3 中的 csv 文件行中删除单词

Removing words from csv-file's line in python3

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

如果我有这样一行:

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

而我的 objective 是这样结束的:

0.6,5.5,1.3,11.1,0.0

我应该怎么做?是否可以只考虑数字?

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

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 将删除所有非数字列。