如何获取括号中的数据并在dataframe中创建新行

2024-09-28 21:34:19 发布

您现在位置:Python中文网/ 问答频道 /正文

您能告诉我如何在括号中获取数据并在数据框中创建新行吗

条件是:

案例1:如果行的第一个字母以小写字母开头并带有括号 我们不需要检查括号内的数据,只需要检查行是否以小写开头

  • 条目1:药品名称=第1列,等级=第2列,限制=第3列
  • 条目2:第1栏括号内的药物名称=信息,第2栏为第2层,第3栏为限制

案例2:

  • 否则,药物名称=第1列,第2层=第2列,限制=第3列

输入: 示例输入文件http://www.filedropper.com/input_2

预期输出:http://www.filedropper.com/output_2


Tags: 数据名称comhttpwww字母条目条件
1条回答
网友
1楼 · 发布于 2024-09-28 21:34:19

要提取值,可以使用str.extractall。如果需要所有值,可以创建值的副本,然后将其追加回:

df2 =df.copy()
df2['Drug Name'] = df['Drug Name'].str.extractall(r'[a-z]?.*?\((.+)\).*',flags=re.MULTILINE).reset_index()[0]
df2 = df2.dropna() # df2 contains only values inside parantheses
pd.concat([df,df2])

相关问题 更多 >