基于多个条件从数据帧中删除字符串

2024-09-28 01:33:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个2列的数据帧。我需要在多个条件下删除单词。你知道吗

  1. 如果文本列中的字符串长度等于1
  2. 如果文本对应的关联单词列为空
  3. 如果文本列只包含数字,则从数据框中删除行

输入

Text             Associated_word

Corperation      Corp., Coperate
f                flat,flt,flaat
100              200,30,40
block
24fl             24floor,25fl,36fl
central          centre, cent
20               30,40

输出

Text             Associated_word
Corperation      Corp., Coperat
24fl             24floor,25fl,36fl
central          centre, cent

我的代码

df= df[~df['Associated_word'].isnull()] 
df['Text']= (df['Text'].str.len() == 1)

Tags: 数据字符串text文本df数字条件单词
1条回答
网友
1楼 · 发布于 2024-09-28 01:33:51

你要找的是你所有条件的组合,用一个逻辑或。您可以通过numpy.logical_or.reduce实现这一点:

import numpy as np
conditions = [
    df['Associated_word'].isnull(),
    df['Text'].isnumeric(),
    df['Text'].str.len() == 1
]
df = df[np.logical_or.reduce(conditions)]

相关问题 更多 >

    热门问题