R语言 删除每个数据框架列中的所有空白处

R语言 删除每个数据框架列中的所有空白处

在这篇文章中,我们将学习如何在R编程语言中删除每个数据框架列中的所有空白。

使用中的数据框架样本

           c1     c2
1   geeks for geeks 
2          cs     f 
3  r   -lang       g
R

方法1:使用gsub()函数

在这种方法中,我们使用 apply() 函数将一个函数应用到数据框中的每一行。应用于数据框中每一行的函数是 gsub() 函数,它用于替换一个字符串中所有匹配的模式,我们使用gsub()函数来查找 空白( /s ), 然后用 “替换 这样就可以删除空白。

注意 :我们用 as.data.frame() 函数包装了整个输出,这是因为apply()函数返回一个Matrix对象,所以我们需要将其转换为一个 数据框架

语法: as.data.frame(apply(df,margin, function(x) gsub(“\s+”, “”, x))

参数

df: 数据框架对象

margin: 要应用操作的尺寸

function(x) :要应用的操作,本例中为gsub()。

gsub(): 用””替换”\s”。

例子: 使用gsub()去除空白的R程序

df <- data.frame(c1 = c("  geeks for", "  cs", "r   -lang "),
                 c2 = c("geeks ", "f ", "  g"))
 
df_new <- as.data.frame(
  apply(df,2, function(x) gsub("\\s+", "", x)))
 
df_new
R

输出

C1 C2 

1 geeks for geeks 

2 cs f 

3 r-lang g 
Bash

方法2:使用str_remove_all()

我们需要首先使用 install.packages() 命令安装软件包 “stringr “,然后使用 library ()函数将其导入。

str_remove_all() 函数需要两个参数,首先是要进行删除操作的整个字符串,然后是要删除其所有出现的字符。

语法 : str_remove_all(string, char_to_remove)

参数

string: 整个字符串

char_to_remove: 要从字符串中删除的字符。

例子: 使用str_remove_all()删除空白的R程序

library("stringr")                                
 
str <- " Welcome   to Geeks for Geeks "
str_remove_all(str," ")
R

输出

[1] “WelcometoGeeksforGeeks”

既然我们已经理解了str_remove_all()函数,那么让我们继续讨论将此函数应用于数据框架的所有行的方法。

语法: as.data.frame(apply(df,margin, str_remove_all, ” “))

参数 :

df: 数据框架对象

margin: 要应用操作的维度

str_remove_all: 要应用的操作

在这种方法中,我们使用apply()函数对数据框中的每一行都应用一个函数。所使用的函数是 str_remove_all() 函数,它被应用于数据框架中的每一行。我们把空格 “” 作为一个参数,这个函数从每一行中删除所有出现的 “。

注意 :我们用as.data.frame()函数包装了整个输出,这是因为apply()函数返回一个Matrix对象,所以我们需要将其转换为一个数据框架。

示例: 使用str_remove_all()从数据框架中删除空白的R程序

library("stringr")                          
 
df <- data.frame(c1 = c("  geeks for", "  cs", "r   -lang "),
                 c2 = c("geeks ", "f ", "  g"))
 
df_new <-as.data.frame(apply(df,2, str_remove_all, " "))
 
df_new
R

输出

C1 C2 

1 geeks for geeks 

2 cs f 

3 r-lang g 
Bash

方法3:使用str_replace_all()函数

str_replace_all() 函数需要3个参数。首先,它接收要进行操作的 输入字符串 。然后,它接收要被替换的 模式 和要被替换 值。在这里, 模式”” “所取代。

语法 :as.data.frame(apply(df,2, function(x) str_replace_all(string=x, pattern=” ” , repl=””)))

参数

df :数据框架对象

margin :要应用操作的维度

function (x): 要应用的操作,本例中是str_replace_all()。

str_replace_all (): 将所有出现的””替换为””

在这种方法中,我们使用 apply() 函数将一个函数应用于数据框中的每一行。应用于数据框中每一行的函数是str_replace_all()函数,它用于从一个字符串中替换所有匹配的模式,我们使用str_replace_all()函数来查找空白( ), 然后用 “” 替换,这就删除了空白。

注意 :我们用as.data.frame()函数包装了整个输出,这是因为apply()函数返回了一个Matrix对象,所以我们需要将其转换为数据帧。

例子: 使用str_replace_all()去除空白的R程序

library(stringr)
 
df <- data.frame(c1 = c("  geeks for", "  cs", "r   -lang "),
                 c2 = c("geeks ", "f ", "  g"))
 
df_new <-as.data.frame(apply(df,2,
                             function(x) str_replace_all(string=x,
                                               pattern=" ", repl="")))
 
df_new
R

输出

C1 C2 

1 geeks for geeks 

2 cs f 

3 r-lang g 
Bash

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册