gpt4 book ai didi

python - 迭代 PANDAS DATAFRAME 时添加、删除、编辑行和列

转载 作者:行者123 更新时间:2023-12-01 02:41:17 24 4
gpt4 key购买 nike

我有一个包含超过 50,000 条推文的 csv 文件,我用 Pandas 将其作为 DataFrame 打开

df = pd.read_csv('dataset_tweets.csv')

enter image description here

我的目标是分析推文的情绪,在继续之前,我需要对推文进行标准化。我已经为此定义了一个函数,我想将输出添加为数据帧的新列(例如 Text_Normalized)。

尽管如此,如果该行满足某些条件(例如,如果推文不是用英语写的),我可能还需要删除该行。

如何迭代数据帧,将“标准化器”函数应用于文本列,如果不满足特定条件则删除该行,并最终添加一个文本标准化的新列?

最佳答案

假设你有一些“文本规范化”功能:

def normalises_text(text):
....
return normalised_text

您可以将此“按行”应用到“文本”列,然后非常简单地将其放入新列中,如下所示:

df['normalised_text'] = df.text.apply(normalises_text)

要删除不符合某些条件的行,您需要一种在数据框中定义条件的方法。

假设您定义了一个函数来识别文本是否为英语,并返回一个 bool 值:

def is_text_english(text):
....
return text_is_english

然后像以前一样将其放入一列中:

df['text_is_english'] = df.text.apply(is_text_english)

然后,您可以按如下方式过滤数据框:

filtered_df = df[df.text_is_english]

或者,假设您有一个列说明推文的语言,您可以这样做:

filtered_df = df[df.tweet_language == 'EN']

这里的关键点是 apply 函数:

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.apply.html

关于python - 迭代 PANDAS DATAFRAME 时添加、删除、编辑行和列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45694517/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com