我想將兩列合并為一列作為單詞/標記列表。目前我的數據集看起來像:A_Col B_Col C_Colhome my house I have a new housepaper research paper my mobile phone is brokenNaN NaN zoe zaczek whoNaN NaN two per centNaN 是空字段的值。我想做的是以下內容:保留列A_Col但合并B_Col并C_Col為了有這樣的東西:A_Col BC_Col home ['my', 'house','I', 'have', 'a', 'new', 'house']paper ['research', 'paper', 'my', 'mobile', 'phone', 'is,','broken']NaN ['zoe', 'zaczek', 'who']NaN ['two', 'per', 'cent']看問題,需要的步驟應該是:標記化B_Col;標記化C_Col;合并結果;刪除 NaN 值,無論它們是否。對于前兩點,我使用以下內容:df['B_Col'] = df.apply(lambda row: nltk.word_tokenize(row['B_Col']))df['C_Col'] = df.apply(lambda row: nltk.word_tokenize(row['C_Col']))合并結果:df['BC_Col'] = df['B_Col'] + df['C_Col']然后我應該刪除NaN值。但是,我的代碼中有些東西不起作用,因為我沒有獲得B_Col和的標記化C_Col。我希望你能幫助我理解我的錯誤。謝謝。
1 回答

繁花如伊
TA貢獻2012條經驗 獲得超12個贊
你可以這樣做:
df['BC_Col'] = df['B_Col'].fillna('').str.split() + df['C_Col'].fillna('').str.split()
df
A_Col B_Col C_Col BC_Col
0 home my house I have a new house [my, house, I, have, a, new, house]
1 paper research paper my mobile phone is broken [research, paper, my, mobile, phone, is, broken]
2 NaN NaN zoe zaczek who [zoe, zaczek, who]
3 NaN NaN two per cent [two, per, cent]
添加回答
舉報
0/150
提交
取消