R语言 创建列名中带有空格的数据框架

R语言 创建列名中带有空格的数据框架

在这篇文章中,我们将看到如何在R编程语言中创建一个列名中有空格的DataFrame。

方法1:使用check.names属性

R语言中的data.frame()方法可以用来在R语言中创建一个带有单独行和列的数据框。这个方法包含一个属性check.names,在进行这个调用时,默认设置为TRUE。这个属性的作用是验证分配给变量的名字在语法上是否有效。它还确保名称不重复。如果分配的名字有任何违反,这些名字会被make.names属性隐含地调整。

make.names属性为数据框的列分配了允许的字符串名称,其中任何无效的字符都被转换为’.’。 它将一个字符向量作为输入,并将输出作为相同长度的字符向量,其中每个单元格的值都被强制为合法名称。

语法上有效的名称由字母、数字、点或下划线字符组成,以字母或点开头,后面不跟数字。

语法

make.names(names, unique=FALSE)

例子

# declaring a data frame in R
data_frame = data.frame("Col Num  1"= c(1, 2, NA, 0), 
                        "Col Num  2"= c( NA, NA, 3, 8), 
                        "Col Num  3"= c("A", "V", "j", "y"))
  
print("Original data frame")
print(data_frame)
  
# printing spaces unmodified
data_frame_mod = data.frame("Col Num  1"= c(1, 2, NA, 0), 
                            "Col Num  2"= c( NA, NA, 3, 8), 
                            "Col Num  3"= c("A", "V", "j", "y"),
                            check.names=FALSE)
print("Modified data frame")
print(data_frame_mod)

输出

[1] "Original data frame"
  Col.Num..1 Col.Num..2 Col.Num..3
1          1         NA          A
2          2         NA          V
3         NA          3          j
4          0          8          y
[1] "Modified data frame"
  Col Num  1 Col Num  2 Col Num  3
1          1         NA          A
2          2         NA          V
3         NA          3          j
4          0          8          y

方法2:使用colnames()方法

R语言中的colnames()方法用于为R语言中的数据框架分配列名。它用于重写分配给列的现有值。它的输入是一个字符向量,由将用于列名的字符串组成,其长度相当于R语言中的列数。由于空格是字符串中的一个有效字符,因此,使用这种方法进行的列名分配在名称中接受空格。

最初,列名使用make.names属性功能进行转换,但使用字符串向量分配给数据框的colnames()时,其值会被覆盖。

例子

# declaring a data frame in R
data_frame = data.frame("Col Num  1"= c(1, 2, NA, 0), 
                        "Col Num  2"= c( NA, NA, 3, 8), 
                        "Col Num  3"= c("A", "V", "j", "y"))
print("Original data frame")
print(data_frame)
  
# defining column names using vector
colnames(data_frame) = c("Col Num  1","Col Num  2","Col Num  3")
  
# printing modified data frame
print("Modified data frame")
print(data_frame)

输出

[1] "Original data frame"
  Col.Num..1 Col.Num..2 Col.Num..3
1          1         NA          A
2          2         NA          V
3         NA          3          j
4          0          8          y
[1] "Modified data frame"
  Col Num  1 Col Num  2 Col Num  3
1          1         NA          A
2          2         NA          V
3         NA          3          j
4          0          8          y

方法3:使用names()方法

R语言中的names()方法可以作为任何R语言对象的getter或setter来使用。它把需要命名的对象作为一个参数,右边是一个矢量,其长度相当于要重新命名的对象的长度,本例中是数据框。它的用法与colnames()方法完全相似。

语法

names(df) <- c(...,..)

# declaring a data frame in R
data_frame = data.frame("Col Num  1"= c(1, 2, NA, 0), 
                        "Col Num  2"= c( NA, NA, 3, 8), 
                        "Col Num  3"= c("A", "V", "j", "y"))
print("Original data frame")
print(data_frame)
  
# defining column names using vector
names(data_frame) = c("Col Num  1","Col Num  2","Col Num  3")
  
# printing modified data frame
print("Modified data frame")
print(data_frame)

输出

[1] "Original data frame"
 Col.Num..1 Col.Num..2 Col.Num..3
1          1         NA          A
2          2         NA          V
3         NA          3          j
4          0          8          y
[1] "Modified data frame"
 Col Num  1 Col Num  2 Col Num  3
1          1         NA          A
2          2         NA          V
3         NA          3          j
4          0          8          y

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程