Как предлагается в комментариях, название штата может использоваться для отделения округа от страны. re.split
может использоваться для поиска имени состояния, разделенного пробелом. Я использую пробел с разделителями, потому что «Нью-Йорк Сити» в противном случае будет разделен некорректно, но поскольку он начинает строку, он не разделяется пробелом. Это может завершиться ошибкой, если в названии округа есть имя штата, в котором нет начала строки.
import csv
import re
splitter = r' (Alabama|Alaska|Arizona|Arkansas|California|Colorado|Connecticut|Delaware|Florida|Georgia|Hawaii|Idaho|Illinois|Indiana|Iowa|Kansas|Kentucky|Louisiana|Maine|Maryland|Massachusetts|Michigan|Minnesota|Mississippi|Missouri|Montana|Nebraska|Nevada|New Hampshire|New Jersey|New Mexico|New York|North Carolina|North Dakota|Ohio|Oklahoma|Oregon|Pennsylvania|Rhode Island|South Carolina|South Dakota|Tennessee|Texas|Utah|Vermont|Virginia|Washington|West Virginia|Wisconsin|Wyoming) '
with open('data.csv',newline='') as fin:
with open('processed.csv','w',newline='') as fout:
r = csv.reader(fin)
w = csv.writer(fout)
next(r) # skip header
w.writerow(['County','State','Country','Total'])
for row in r:
row[:1] = re.split(splitter,row[0])
w.writerow(row)
processing.csv с учетом ввода OP:
County,State,Country,Total
New York City,New York,US,"15,597 confirmed"
Westchester,New York,US,"3,891 confirmed"
Nassau,New York,US,"2,869 confirmed"
Suffolk,New York,US,"1,880 confirmed"
King,Washington,US,"1,277 confirmed"
Cook,Illinois,US,"1,194 confirmed"