我有一个csv输入文件'out_test.csv',其中有一个备注列。我想从那里提取'aaaa',并以'aaaa'为中心+- 1个单词。然后需要添加一个名为'info'的附加列,并将这3个单词存储在那里。下面是文件:enter image description here
注意:'aaaa'可能不在列中,在这种情况下,在'info'列中写入'NA'。
我已经这样做了:
with open('out_test.csv','r+') as csvf: # open csv file
lines = csvf.read().split("\n") # split contents into lines
for i, line in enumerate(lines):
row = line.split(",") # split lines into columns
for j, col in enumerate(row):
if "aaaa" in col: # check if keyword in column
row.append(str(j)) # append the row to last column
lines[i] = ','.join(row)
with open('out_test.csv', 'wt') as csvfw:
csvfw.write('\n'.join(lines)) # write lines back to file.
注意事项:
1.我从另一篇文章中引用了或多或少相同的问题。text
1.我也遇到了一些权限错误。
1条答案
按热度按时间ruarlubt1#
我会这样做:
Regex:[ demo ]
或者使用pandas的等价物(* 使用与上面相同的 *
pattern
*):output.csv
的最后2个字段(* 以表格格式 *):使用
input.csv
:如果你需要的目标不仅仅是一个单词,你可以尝试下面的模式: