获取筛选的行名称并将其保存在列表中

时间:2017-01-03 11:54:02

标签: python pandas dataframe

我有一个这样的数据框:

       Area         2016-09-02  2016-09-03  2016-09-04  2016-09-05  
     39.TFO 1-14     6588.67     6604.03     6567.42     6421.12   
    40.TFO 15-28     6843.58     6929.41     6922.24     6801.98   
    41.TFO 29-42     3546.59     3634.46     3770.85     3813.15   
    42.TFO 43-52     3816.58     3834.43     3830.02     3822.59 

我想将区域值保存在像

这样的列表中

[TFO 1-14,TFO 15-28,TFO 29-42,TFO 43-52]

我尝试过这段代码,但输出错误。

df ['Area']。str.extract('TFO(。*)'))

如何实现?

1 个答案:

答案 0 :(得分:4)

您可以使用splitindexing-with-str

print (df['Area'].str.split('.').str[1].tolist())
['TFO 1-14', 'TFO 15-28', 'TFO 29-42', 'TFO 43-52']

str.extracttolist的另一种解决方案:

print (df['Area'].str.extract('(TFO .*)', expand=False).tolist())
['TFO 1-14', 'TFO 15-28', 'TFO 29-42', 'TFO 43-52']