【问题标题】:Get Column Name of CSV file获取 CSV 文件的列名
【发布时间】:2019-05-20 09:01:49
【问题描述】:

我想获取 CSV 数据的列名并对列名应用一些函数。

我尝试了以下代码,但输出只是返回数据类型

reading_data <- read.csv("test.csv")

print("Header Row:")
print(reading_data[0,])  # This gives me a list of column names correctly
print(class(reading_data[0,])) # O/P is: "data.frame"
print("++++++++++++++++++++++++++++")
for(i in 1:ncol(reading_data)){ 
    print(reading_data[0,i]) # O/P is: numeric(0) ; I want string value of data name here.
} 

【问题讨论】:

  • 我不明白。如果您已经在加载数据,那么为什么不直接使用names(reading_data)...?
  • 我想对列名应用一些函数,所以需要每列的单独字符串名称。

标签: r


【解决方案1】:

reading_data[0,] 不会返回列名,它会返回一个没有选择行的数据框。

检查例如mtcars

mtcars[1, ]
#          mpg cyl disp  hp drat   wt  qsec vs am gear carb
#Mazda RX4  21   6  160 110  3.9 2.62 16.46  0  1    4    4

这是mtcars 的第一行,带有列名。

现在如果你这样做mtcars[0, ]

mtcars[0, ]
# [1] mpg  cyl  disp hp   drat wt   qsec vs   am   gear carb
#<0 rows> (or 0-length row.names)

它返回列名,因为索引 0 处没有行,所以没有选择任何行。

如果你想分别对每个列名应用一些函数,你可以这样做

for(i in names(reading_data)){ 
    print(i) 
    #add the operation to be applied here
} 

names(mtcars)colnames(mtcars) 会直接为您提供列名。

names(mtcars)
# [1] "mpg"  "cyl"  "disp" "hp"   "drat" "wt"   "qsec" "vs"   "am"   "gear" "carb"
colnames(mtcars)
# [1] "mpg"  "cyl"  "disp" "hp"   "drat" "wt"   "qsec" "vs"   "am"   "gear" "carb"

【讨论】:

    【解决方案2】:

    获取列名的方法不是reading_data[0,],而是使用colnames()函数...在本例中为colnames(reading_data)

    如果您希望将这些存储在向量中,请使用

    colnames_df <- colnames(reading_data)
    

    你可以将你的函数应用到哪个(你也可以直接应用到colnames(reading_data))。

    【讨论】:

      【解决方案3】:

      感谢您的回答。

      names(reading_data) 达到了我的目的。

      col_names = names(reading_data)
      
      for(i in 1:length(col_names)){ 
        print(col_names[i]) 
        # Operation on col_names[i]
      } 
      

      PS:我是R的新手,所以不知道所有这些基本功能:)

      【讨论】:

        猜你喜欢
        • 2014-06-15
        • 2023-03-27
        • 1970-01-01
        • 1970-01-01
        • 2017-05-17
        • 2016-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多