使用Pandas将列表附加到csv中的特定列

问题描述 投票:1回答:2

嗨大家我可以使用Pandas尽可能使用一些帮助:我有一个现有的csv具有以下结构:

column1  column2 column3 column4 
1         ww        1     Sam 
2         ss        2     Bill
                    3     Jack 

list = [[4,Jin],[5,Carl]]

我想写入column3和column4下的csv,得到以下结果:`

column1 column2 column3 column4
 1       ww        1       Sam
 2       ss        2       Bill
                   3       Jack
                   4        Jin
                   5       Carl

对此有何帮助?我知道大熊猫通过行阅读但是如何做到这一点?

python pandas csv
2个回答
1
投票

您可以使用pd.DataFrame.append

#   column1 column2  column3 column4
# 0       1      ww        1     Sam
# 1       2      ss        2    Bill
# 2    None    None        3    Jack

lst = [[4, 'Jin'], [5, 'Carl']]

app = pd.DataFrame([[None, None, x[0], x[1]] for x in lst],
                   columns=['column'+str(i) for i in range(1, 5)])

df = df.append(app, ignore_index=True)

#   column1 column2  column3 column4
# 0       1      ww        1     Sam
# 1       2      ss        2    Bill
# 2    None    None        3    Jack
# 3    None    None        4     Jin
# 4    None    None        5    Carl

0
投票
matrix = pd.read_csv(survey_dictionary)#, encoding="UTF-8")
fistElem = None
nullVector = matrix['column3'].isnull()
incr = 0
for isNull in nullVector:
    if isNull == True:
        fistElem = incr
        break
    incr = incr + 1
for source in list:
    if source[0] != fistElem:
        matrix.at[fistElem,'column3'] = source[0]
        matrix.at[fistElem,'column4'] = source[1]
matrix.to_csv(survey_dictionary, index =False, encoding='utf-8-sig')
© www.soinside.com 2019 - 2024. All rights reserved.