我是一个Python新手,我正在尝试从一个dataframe的一列中解析一些字符串数据。dataframe来自一个csv文件。
我的数据框有4列:
“索引”、“发送者名称”、“内容”和“React”\r
'reactions\r'列中的所有数据条目都具有相同的格式,您可以在下面看到:
[{'reaction'
| index. | reactions\r |
| -------- | -------- |
| 0 |[{'reaction''√∞\x9f\x91\x8d', 'actor': 'anon1'}]
[{'reaction': '√∞\x9f\x98\x86', 'actor': 'anon2'},
[{'reaction': '√∞\x9f\x98\x86', 'actor': 'anon3'},
[{'reaction': '√∞\x9f\x98\x86', 'actor': 'anon4'}]
| 1 | [{'reaction''√∞\x9f\x91\x8d', 'actor': 'anon1'}]
每行在[{ }]个括号中有不同数量的数据。正如你所看到的,每个括号被分成:['reaction':... and 'actor':...}]
我想把这个列分成两列-一列只包含React,另一列包含演员。有办法做到这一点吗?例如,我想上面的看起来像这样:
| index | reaction | actor
| ------ -------- |
| 0 | √∞\x9f\x91\x8d, | anon1, anon2, anon3, anon4
'√∞\x9f\x98\x86'(x3) |
| 1 | '√∞\x9f\x91\x8d' | anon1
我尝试了以下方法:
reactions['reaction_split'] = reactions['reactions\r'].str.split(',')
reactions
这个数据框叫做React。这个不起作用。有人有什么想法吗?
1条答案
按热度按时间7hiiyaii1#
要从CSV文件中解析列中的字符串数据,您可以使用Python等编程语言。下面是如何使用Python实现的示例:
假设您有一个名为“data.csv”的CSV文件,其中包含以下内容:
1.导入CSV模块:首先在Python脚本中导入csv模块。
1.打开CSV文件:使用open函数打开CSV文件并创建
csv.reader
对象。1.解析数据:使用for循环遍历CSV文件中的每一行,并解析所需列中的数据。
在上面的示例中,我们从CSV文件的第三列解析电话号码,并将其存储在一个名为phone_number的变量中。您可以修改此代码以解析其他列的数据或一次解析多个列。
注意:请务必记住CSV文件的结构,并确保从正确的列解析数据。如果CSV文件有标题,则可以使用next(reader)跳过第一行,以避免解析标题行。