我试图替换以字符串开头的单词,该字符串存储在多行数据中的文本数据中。df有6列:日期、用户、推特、语言、坐标、地点。替换发生在具有例如第1行的tweet列中:
nous nous ne sommes pas très收藏,au télétravail mais nous avons de super tout中性粒v. Il manque un babyfoot les courtiers auront re联les rangs de la Start https://link。
在第二行中: parévélétravail que le #télétravail pouvait avoir un impact sur le #cyclemenstruel,et ce,etàt de la疲劳,du #stress et du manque d‘’activitécause induits par le travailà距离
通过@marieclaire_fr https://link。
在第三行:@IrisDessine @fredchristian__ Mais c‘et car j’ami horreur de passer la serpillière le mien aspire et lave et专营c‘et devenu meilleur ami il bosse tranquillou quand je suis en télétravail
等。
我想把以“@”开头的单词替换为“@user”,并将链接(以“http”开头)替换为“http”。df的所有列都被视为对象。我尝试过多种方法:
for individual_word in df["Tweet"]:
#print(individual_word)
if individual_word.startswith('@') and len(individual_word) > 1:
individual_word = '@user'有了这段代码,什么都没有发生,没有错误,没有替换。另一个代码:
for individual_word in df["Tweet"].split(' '):
#print(individual_word)
if individual_word.split(' ').startswith('@') and len(individual_word) > 1:
individual_word = '@user'对于这段代码,我有一个错误:'Series‘object没有属性'split’。另一个代码:
for individual_word in df["Tweet"].str.split(' '):
#print(individual_word)
if individual_word.str.split(' ').startswith('@') and len(individual_word) > 1:
individual_word = '@user'
#print(individual_word)对于这段代码,我有一个错误:'list‘object没有属性'str’。在将列Tweet转换为字符串时,我也尝试过这样做,但是没有任何更改。根据尝试的代码,我认为每一行都被认为是一个列表,所以我必须在列表列表中查找以'@‘和'http’开头的单词,并替换它们。或者,每一行都被认为是一个单词,而不是一个句子。因此,如果第一个单词以'@‘开头,它将被更改,但如果在句子后面以'@’开头,则不会更改。
我也试过列出清单。我可以将我的数据放在一个名为my_list和3列的列表中--类型、大小、值。列值中的my_list第1行:
“存在”、“有利”、“télétravail”、“超级”、“本地”、“中性”、“manque”、“婴儿脚”、“朝臣”、“喜悦”、“响”、“开始”、“国家”、“https://link‘”
列值中的my_list第2行:
“练习曲”、“尖峰”、“保健”、“révéler”、“télétravail”、“影响”、“自行车”、“因”、“疲劳”、“压力”、“manque”、“activité”、“体质”、“induire”、“travail”、“距离”、@marieclaire_fr、“https://link‘”
列值中的my_list第3行:
‘'vive','télétravail','commeunlundi','https://link’‘
我试过这个密码:
for each_list in my_list:
#print(each_list)
for each_word in each_list:
#print(each_word)
if each_word.startswith('@') and len(each_word) > 1:
#print(each_word)
each_word = '@user'我没有任何错误,但是单词在my_list的每个列表中都没有变化。
谢谢你的帮助!
发布于 2022-10-28 12:35:16
发布于 2022-10-28 11:46:01
尝试在新文件中保存值,如果word以@ save @user delete开头,则保存该单词,然后删除原始文件。现在发生的情况是,变量individual_word正在获取值@user,但它是一个变量,因此不会进行永久更改
https://stackoverflow.com/questions/74234739
复制相似问题