我想按单词过滤数据框中的行,但它给出空白
I want to get filtered row in dataframe by word but it gives blank
我想在我的数据框中按单词过滤行。我的话是总督。 Dataframe 包括 Elon Musk 的推文。我想按单词过滤这些推文并拉出过滤后的推文。我的代码算法的最后一部分如下。
pi = tweepy.API(authenticate, wait_on_rate_limit = True)
tweets = api.user_timeline(screen_name = "elonmusk", count = 2000,lang = "en", tweet_mode = "extended")
df = pd.DataFrame([tweet.full_text for tweet in tweets], columns = ["tweet"])
def cleantext(text):
text = re.sub(r'@\w+', "", text) # Remove Mentions
text = re.sub(r"#", "", text) # Remove Hashtags Symbol
text = re.sub(r"RT[\s]+", "", text) # Remove Retweets
text = re.sub(r"https?:\/\/\S+", "", text) # Remove The Hyper Link
return text
# Clean The Text
df["tweet"] = df["tweet"].apply(cleantext)
df[df['tweet'].str.contains('Doge')]
这是您要找的吗?
#make a dataframe
d = {'tweet': ['elon tweets about doge coin', 'elon tweets about bitcoin']}
df = pd.DataFrame(data=d)
#get filtered records for twwets containing doge
df.loc[df['tweet'].str.contains('doge'),:]
这就是它在我的环境中的样子
您可以使用 df.loc 从数据框中过滤列和记录,在这种情况下,我们通过包含 doge 的字符串过滤记录。
文档在这里,如果你想看的话:
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.loc.html
https://pandas.pydata.org/docs/reference/api/pandas.Series.str.contains.html
尝试不区分大小写:
df[df['tweet'].str.contains(r'(?i)Doge', regex=True)]
我想在我的数据框中按单词过滤行。我的话是总督。 Dataframe 包括 Elon Musk 的推文。我想按单词过滤这些推文并拉出过滤后的推文。我的代码算法的最后一部分如下。
pi = tweepy.API(authenticate, wait_on_rate_limit = True)
tweets = api.user_timeline(screen_name = "elonmusk", count = 2000,lang = "en", tweet_mode = "extended")
df = pd.DataFrame([tweet.full_text for tweet in tweets], columns = ["tweet"])
def cleantext(text):
text = re.sub(r'@\w+', "", text) # Remove Mentions
text = re.sub(r"#", "", text) # Remove Hashtags Symbol
text = re.sub(r"RT[\s]+", "", text) # Remove Retweets
text = re.sub(r"https?:\/\/\S+", "", text) # Remove The Hyper Link
return text
# Clean The Text
df["tweet"] = df["tweet"].apply(cleantext)
df[df['tweet'].str.contains('Doge')]
这是您要找的吗?
#make a dataframe
d = {'tweet': ['elon tweets about doge coin', 'elon tweets about bitcoin']}
df = pd.DataFrame(data=d)
#get filtered records for twwets containing doge
df.loc[df['tweet'].str.contains('doge'),:]
这就是它在我的环境中的样子
您可以使用 df.loc 从数据框中过滤列和记录,在这种情况下,我们通过包含 doge 的字符串过滤记录。
文档在这里,如果你想看的话:
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.loc.html
https://pandas.pydata.org/docs/reference/api/pandas.Series.str.contains.html
尝试不区分大小写:
df[df['tweet'].str.contains(r'(?i)Doge', regex=True)]