📜  在 R 中的列名中创建带有空格的 DataFrame

📅  最后修改于: 2022-05-13 01:54:18.704000             🧑  作者: Mango

在 R 中的列名中创建带有空格的 DataFrame

在本文中,我们将看到如何在 R 编程语言中创建列名中带有空格的 DataFrame。

方法 1:使用 check.names 属性

R 中的 data.frame() 方法可用于在 R 中创建具有单独行和列的数据框。此方法包含属性 check.names,在进行此调用时默认设置为 TRUE。此属性的作用是验证分配给变量的名称在语法上是否有效。它还确保名称不重复。如果分配的名称有任何违规,则通过 make.names 属性隐式调整这些名称。

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

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

句法:



例子:

R
# 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)


R
# 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)


R
# 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

方法二:使用 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() 方法完全相似。

句法:

电阻

# 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