Python, Pandas 东风。从字符串中取出数字并将其添加到新列
Python, Pandas DF. Take number from a string and add it to a new column
我得到了一个 pandas 数据框,其中一列的值如下所示:
>>> df['video_p25_watched_actions']
[{'action_type': 'video_view', 'value': '137520'}]
我想提取值编号,并将其添加到新列中,因此预期结果为:
Index | video_p25_watched_actions | p25
-----------------------------------------------------------------
0 | [{'action_type': 'video_view', 'value': '137520'}] | 137520
我用一些原始数据创建了一个 google sheet 来展示它想要的样子:
https://docs.google.com/spreadsheets/d/1aJDiXFyUIb9gZCA1-pPDxciPQWv0vcCairY-pkdGg_A/edit?usp=sharing
提前致谢!
由于列中的所有行都具有相同的结构,您可以使用此
df['new_column'] = df['video_p25_watched_actions'].apply(lambda x: ''.join(e for e in x.split(":")[2] if e.isalnum()))
尝试:
df['value']= df['video_p25_watched_actions'].replace(regex=True,to_replace='[^0-9]',value=' ')
仅获取 df['video_p25_watched_actions'] 的值,其他字母将被替换为 space
我得到了一个 pandas 数据框,其中一列的值如下所示:
>>> df['video_p25_watched_actions']
[{'action_type': 'video_view', 'value': '137520'}]
我想提取值编号,并将其添加到新列中,因此预期结果为:
Index | video_p25_watched_actions | p25
-----------------------------------------------------------------
0 | [{'action_type': 'video_view', 'value': '137520'}] | 137520
我用一些原始数据创建了一个 google sheet 来展示它想要的样子:
https://docs.google.com/spreadsheets/d/1aJDiXFyUIb9gZCA1-pPDxciPQWv0vcCairY-pkdGg_A/edit?usp=sharing
提前致谢!
由于列中的所有行都具有相同的结构,您可以使用此
df['new_column'] = df['video_p25_watched_actions'].apply(lambda x: ''.join(e for e in x.split(":")[2] if e.isalnum()))
尝试:
df['value']= df['video_p25_watched_actions'].replace(regex=True,to_replace='[^0-9]',value=' ')
仅获取 df['video_p25_watched_actions'] 的值,其他字母将被替换为 space