我正在尝试将一些列从导入的 csv
文件复制到 selected.csv
但它给了我这个错误:
'ValueError: Usecols do not match columns, columns expected but not found: ['Status']';
无论我使用哪个列名,它仍然不起作用。 我尝试打印标题并且它正常显示它们,我什至尝试从那里复制列名所以如果可能有我错过的空格或其他东西,但它仍然给我同样的错误。我已经搜索了答案,但没有找到适合我的答案。
import pandas as pd
import numpy as numpy
import csv as csv
path_to_import ='C:/Users/Amila/hello/Auftraege_ALSO_R00.csv'
import_file = pd.read_csv(path_to_import, sep=';',engine='python',encoding='utf-8-sig')
headers = pd.read_csv(path_to_import, index_col=0, nrows=0).columns.tolist()
columns = ['Status']
path_to_selected = 'C:/Users/Amila/hello/selected.csv'
pd.read_csv(path_to_import,usecols=columns).to_csv('selected.csv', index=False)
这些是打印的列名:
['Auftragsdatum;"Auftrags-Nr.";"Ihre Referenz";"Auftragswert";"Auftragsstatus";"Lieferadresse";"Pos.";"Menge";"Art.Nr.";"Herst.Nr.";"Produktname";"Ihre Referenz (Position)";"Netto / Stk.";"Rechn.-Nr.";"Liefers.-Nr.";"Serien-Nr.";"Status";"Hersteller"']
最佳答案
您的代码存在不一致:
pd.read_csv(path_to_import,usecols=columns).to_csv('selected.csv', index=False)
你没有传递相同的sep
arg,它应该是
pd.read_csv(path_to_import,usecols=columns, sep=';').to_csv('selected.csv', index=False)
另外在您的标题行中:
headers = pd.read_csv(path_to_import, index_col=0, nrows=0).columns.tolist()
您已通过 index_col=0
这会将第一列视为与您的其他行不一致的索引列,因此将其删除:
headers = pd.read_csv(path_to_import, nrows=0).columns.tolist()
关于python - Pandas- ValueError : Usecols do not match columns, 列预期但未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55513128/