我是编程新手,我有一堆 CSV 文件,每个文件大约 50 到 60 行。在未指定数量的行之后,第二列中有一个名为“NAME”的字符串。我想在“NAME”之后的第二列中获取所有内容并将其打印到文本文件中。我最初想使用pandas
并skiprows
执行此操作,但问题是我运行的每个 csv 都会在不同的行中有“NAME”。此外,如果有帮助,每个 CSV 中的“NAME”前三行都有一个空行。
header, header
header, header
NUMBER,ITEM
N1,Shoe
N2,Heel
N3,Tee, random stuff
N4,Polo, random stuff
N5,Sneaker
N10,Heel
N11,Tee
...
...
...
How
Count 17
SORT,NAME
H1,Thing, random stuff
H2,WTANK
H3,TEE2
H4,TEE
我也希望文本文件中没有重复,因为我将在一个目录中运行大约 1000 个 CSV。这是我开始使用的一些代码,也是我卡住的地方。
import pandas as pd
import csv
import glob
fns = glob.glob('*.csv') #goes through every CSV file in director
for csv in fns:
prod_df = pd.read_csv(csv, skiprows=???)
with open (os.path.join('out', fn), 'wb') as f:
w = csv.writer(f)
test_alias = prod_df['NAME'].unique()
w.writerow(row)
我知道它不起作用,并且可能不是一个很好的代码。任何帮助将不胜感激。谢谢你!