如何使用特定条件从现有数据框创建新数据框 - python

时间:2017-11-20 13:57:47

标签: python dataframe

我的数据框如下所示。

   text      country    language
-----------------------------------
  football     US         Eng
  baseball     JP         Jpn
  swimming     UK         Eng
  running      FR         Fra
  rugby        NZ         Eng
  Hockey       NL         Dut

在python中,我想在“text”列中提取包含字符串'ball'和'ing'的行,并使用下面的行创建一个新的数据帧。

   text      country    language
-----------------------------------
  football     US         Eng
  baseball     JP         Jpn
  swimming     UK         Eng
  running      FR         Fra

1 个答案:

答案 0 :(得分:2)

使用pandas,你可以slice using multiple conditions,注意语法上的棘手括号。

df = pd.DataFrame({'A': ['foo', 'bar', 'fooing', 'barball'],
                   'B': [1, 2, 3, 4]})

df_slice = df[(df.A.str.contains('ing')) | (df.A.str.contains('ball'))]

应该产生

df_slice
A        B
fooing   3
barball  4

如果您的目标是在ingball中切换 end 的字词,请在条件中使用endswith()代替contains()。希望它有所帮助!