假設我有一個熊貓數據幀,其中兩列由字符串列表的如下所示一到在大熊貓數據幀串的兩個列表之間的一對一映射
df=pd.DataFrame({'A' : [ ['a','b','c'], ['d','e','f'] ], 'B':[ ['g','h','i'], ['j','k','l'] ] })
我想連接在所述第一字符串元素在A中的第一個列表中的第一個字符串元素位於B的第一個列表中,並帶有連字符等。最終的產品將是另一個C柱使
df['C'] = [ ['a-g','b-h','c-i'], ['d-j','e-k','f-l' ] ]
我嘗試了不同的功能與應用。()和map(),但什麼也沒有產生預期的結果,任何幫助表示讚賞。
它不工作!實際上,它給出了與前面建議的答案相同的錯誤'傳遞值的形狀是(17,2),指數意味着(17,34)'知道數據框的形狀是17行和34列。我儘可能地回答了你的答案,它在數據框僅包含這2列的時候工作,當你添加其他類型的額外列時,它就不再工作了。我試圖用df [['A','B']]替換df.apply。現在應用它給我下面的錯誤'無法從形狀(15)廣播輸入數組到形狀(2)' –
@MartinHeusen如果你如果要連接所有34列,最好確保每個單元格的元素數量完全相同。 –
不,我不想連接34列,只有2列,我知道每行中列表的長度是相同的。每行的長度可能不同,但在每行中它們是相同的! –