为了账号安全,请及时绑定邮箱和手机立即绑定

如何将特定的定位文本放入数据帧索引中?

如何将特定的定位文本放入数据帧索引中?

汪汪一只猫 2022-08-16 10:40:05
我有一个包含一些文本索引的数据帧,其中包含要复制到列表中的必要信息。我不知道文本信息具体如何(单词总是变化),但我知道在索引中的位置:'point.subclase.optimum.R31.完成'.R31是我想写在列表中的值,所以我知道这个文本总是不同的,介于point.subclase.optimum.和.done之间。我试过:info_list = []for col in df.columns:    if ('point.subclase.optimum.' in col) and ('.done' in col):        info_list.append(col)但是该脚本只是为我提供了列表中的整个索引。有谁知道如何解决它?
查看完整描述

1 回答

?
qq_笑_17

TA贡献1818条经验 获得超7个赞

使用Series.str.extract与转义,因为特殊的正则表达式字符,然后删除可能的缺失值,如果Series.dropna不匹配,最后将输出转换为列表:\.

df = pd.DataFrame({'a':range(3)}, index=['point.subclase.optimum.R31.done',

                                         'point.subclase',

                                         'point.subclase.optimum.R98.done'])

print (df)

                                 a

point.subclase.optimum.R31.done  0

point.subclase                   1

point.subclase.optimum.R98.done  2


L = (df.index.str.extract(r'point\.subclase\.optimum\.(.*)\.done', expand=False)

             .dropna()

             .tolist())

print (L)

['R31', 'R98']




查看完整回答
反对 回复 2022-08-16
  • 1 回答
  • 0 关注
  • 84 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信