【问题标题】:When reading a file, can I specify some column names and let R read the rest from the header row?读取文件时,我可以指定一些列名并让 R 从标题行读取其余部分吗?
【发布时间】:2021-05-19 17:22:21
【问题描述】:

我想知道是否可以指定一些列名并让 R 从 CSV 文件的标题行中读取其余部分。另一种思考方式是“覆盖” R 读取的某些列名。

我有几个气象站的文件。每个文件都以相同的列(站名、纬度、经度、海拔、日期、时间)开头,但其余列的变量因站而异。例如,一些站测量气温,一些测量太阳辐射,一些测量降雨......等等。我想更改标题,但我并不总是知道后面几列会是什么。

例如,对于具有空气温度和湿度数据的站点,我想像这样:

table <- read.csv(file, col.names = c("StationName",
                                      "Latitude",
                                      "Longitude",
                                      "Elevation",
                                      "Date",
                                      "Time"))
# as written this will throw a "header and col.names are different lengths" error...
#   but is there any way to let R 'take it from here', so to speak?

# i.e., giving this:

head(table,1)
#     StationName  Latitude  Longitude  Elevation        Date   Time  AirTemp    RH
# Sagebrush Ridge     43.45      65.91        670  2017-01-01  00:00    -16.0  87.1

我可以从文件标题中使用默认列名读取文件,然后在单独的步骤中更改列名,但我很好奇是否可以在读取步骤中完成。

【问题讨论】:

    标签: r


    【解决方案1】:

    没有办法通过read.csv(或我知道的任何其他 CSV 读取功能)一步完成。

    只需两步即可完成。

    只需分两步即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-09
      • 2013-07-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多