2024-09-29 21:31:50 发布
网友
嗨,伙计们,如果可能的话,我可以对熊猫提供一些帮助:我有一个现有的csv,其结构如下:
column1 column2 column3 column4 1 ww 1 Sam 2 ss 2 Bill 3 Jack list = [[4,Jin],[5,Carl]]
我想在第3列和第4列下写入csv,得到以下结果:`
有什么帮助吗?我知道熊猫会看穿一排排的,但这是怎么做到的呢?在
您可以使用^{}进行此操作:
# 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
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')
数据
# Your csv: import io csvstr = """column1;column2;column3;column4 1; ww ; 1 ; Sam 2; ss ; 2 ; Bill ; ; 3 ; Jack""" inputcsv = io.StringIO(csvstr) pdcsv = pd.read_csv(inputcsv, delimiter=';') # column1 column2 column3 column4 # 0 1 ww 1 Sam # 1 2 ss 2 Bill # 2 None None 3 Jack
要附加的数据
只使用所需的第3列和第4列创建要追加的DataFrame行:
DataFrame
和append使用sort=True,可选使用ignore_index=True(如果需要删除并重置旧索引)。在
append
sort=True
ignore_index=True
pdcsv = pdcsv.append(newrows, sort=True, ignore_index=True) pdcsv # 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
或使用pd.concat与上述相同
pd.concat
pdcsv = pd.concat([pdcsv, newrows], sort=True, ignore_index=True)
您可以使用^{} 进行此操作:
我觉得这更干净
数据
要附加的数据
只使用所需的第3列和第4列创建要追加的
^{pr2}$DataFrame
行:和
append
使用sort=True
,可选使用ignore_index=True
(如果需要删除并重置旧索引)。在或使用
pd.concat
与上述相同相关问题 更多 >
编程相关推荐