亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Pandas dataframe:將列表列轉換為列表

Pandas dataframe:將列表列轉換為列表

大話西游666 2023-05-23 10:18:42
我有一個df帶有列hashtags的數據框:df['hashtags']>>>0                                                       NaN1                                                       NaN2                                               ['COVID19']3                                               ['COVID19']4                         ['CoronaVirusUpdates', 'COVID19']                                ...                        132596    ['coronacrise', 'covid19', 'JN', 'N?oéSóUmNúme...132597                                          ['covid19']132598                                ['corona', 'covid19']132599                                                  NaN132600                                          ['covid19']Name: hashtags, Length: 132601, dtype: object我想創建一個包含列的所有列表元素(除了 )Nan的列表。我試圖通過以下方式列出列表:li = df['hashtags'].tolist()但它將列表轉換為字符串并以字符串列表結尾。例如:li[:5]>>> [nan, nan, "['COVID19']", "['COVID19']", "['CoronaVirusUpdates', 'COVID19']"]我想要的輸出li[:5]是這樣的:['COVID19', 'COVID19', 'CoronaVirusUpdates', 'COVID19', 'coronavirus', 'covid19']
查看完整描述

1 回答

?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

想法是首先刪除缺失值 by?Series.dropna,然后將列表 repr by 轉換ast.literal_eval為列表并在列表理解中展平嵌套列表:

df = pd.DataFrame({'hashtags':[np.nan, np.nan,?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?"['COVID19']", "['COVID19']",?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?"['CoronaVirusUpdates', 'COVID19']"]})


import ast


out = [y for x in df['hashtags'].dropna() for y in ast.literal_eval(x)]

print (out)

['COVID19', 'COVID19', 'CoronaVirusUpdates', 'COVID19']


查看完整回答
反對 回復 2023-05-23
  • 1 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號