Skip to main content
 首页 » 编程设计

Python:如果行中只有 1 个单词,则替换数据框/列中的字符串

2025年05月04日35freeliver54

我有相当困惑的数据 我正在尝试用 '' 或空字符串替换可能只包含 1 个单词或字符串的行。

原始数据如下:

df = pd.DataFrame({'some_text': [ 
        'I enjoy read Mark Twain\'s Books', 
        'Library is very useful', 
        '/', 
        '\\', 
        '/ /', 
        '', 
        'I enjoy read Mark Twain\'s Books', 
        'an', 
        'the', 
        'Books are interesting' 
]}) 

我试过这个:(这是删除行)。我不想删除行只是替换它。

count = df['some_text'].str.split().str.len() 
df[~(count==1)] 

需要的最终输出:

I enjoy read Mark Twain's Books 
Library is very useful 
 
 
/ / 
 
I enjoy read Mark Twain's Books 
 
 
Books are interesting 

请您参考如下方法:

你可以在这里使用一个简单的正则表达式:

df['new_text'] = df['some_text'].str.replace('^\S+$',''); 
>>> df 
                         some_text                         new_text 
0  I enjoy read Mark Twain's Books  I enjoy read Mark Twain's Books 
1           Library is very useful           Library is very useful 
2                                /                                  
3                                \                                  
4                              / /                              / / 
5                                                                   
6  I enjoy read Mark Twain's Books  I enjoy read Mark Twain's Books 
7                               an                                  
8                              the                                  
9            Books are interesting            Books are interesting