Так что мне удалось получить какое-то решение. В этом решении мне удалось удалить префиксы во втором и использовать groupby в pandas для группировки записей по первому столбцу. Затем перебрал его и записал каждую группу отдельно в CSV-файлы. Я получил помощь от ответа @Quang и этой ссылки . Возможно, это можно сделать и лучше, но вот мой код:
import pandas as pd
#read .csv as dataframe
data=pd.read_csv("BlastOut.csv")
#truncates sp| | from second column (['B']).
new_col=data['B'].str[3:-1]
#replaces second column with new_col
data['B']=new_col.to_frame(name=None)
#groups dataframe by first column (['A'])
grouped=data.groupby('A')
#loops through grouped items and writes each group to .csv file with title
#of group ([group_name].csv)
for group_name, group in grouped:
group.to_csv('Out_{}.csv'.format(group_name))
Обновление - удалены все столбцы, кроме интересующего столбца. Это продолжение предыдущего кода
import glob
#reads all csv files starting with "Out_" in filename
files=glob.glob("Out_*.csv")
#loop through all csv files
for f in files:
df=pd.read_csv(f, index_col=0)
# Drop columns by column title (["A"])
df.drop(["A"], axis=1, inplace=True)
df.to_csv(f,index=False)