创建一个函数以从数据集的列中的字符串中提取子字符串

时间:2019-05-22 19:49:04

标签: python python-3.x

我有一个数据集,其中一列是文本。我想创建一个基于输入来获取字符串的函数(如果此字符串具有此子字符串,则打印该字符串)。我已经编写了一个函数,但是不确定为什么它不起作用。

def update_text("selected_text"):
    for text in df['Activity Name']:
        if "selected_text" in text:
            print(text)

1 个答案:

答案 0 :(得分:0)

我使用以下示例数据进行了测试:

import pandas as pd

def update_text(selected_text):
    for text in df['Activity Name']:
        if selected_text in text:
            print(text)

df = pd.DataFrame(['hello monkey', 'welcome'], columns=['Activity Name'])

update_text('hello')

请给出以下结果:

hello monkey

对于新问题:

import pandas as pd

def update_text(df, selected_text):
    dfnew = df.loc[df['Activity Name'].str.contains(selected_text)]
    return dfnew

df = pd.DataFrame(['hello monkey', 'welcome'], columns=['Activity Name'])
dfnew = update_text(df, 'hello')

print (dfnew)
  Activity Name
0  hello monkey