如何添加变量名称

问题描述 投票:0回答:1

我使用了代码

library(readr)
url_delim <- "https://loyce.club/Merit/merit.all.txt"
meritdata<-read_tsv(url_delim)
meritdata
library(foreign)
write.dta(meritdata, "C:/Users/MSI/Desktop/Book/meritdata.dta")

问题是原始txt文件第一行没有变量名。当我将数据导出到 Stata 文件(dta)时,它会造成混乱。

如何在将其导出到 Stata 文件之前先在 R 中创建变量名称?

谢谢您的帮助!

r
1个回答
0
投票

你可以用

col_names
参数来做到这一点。
FALSE
提供通用但唯一的名称,或者您可以传递带有您喜欢的名称的向量。

library(readr)

url_delim <- "https://loyce.club/Merit/merit.all.txt" 

# Generic but unique names
meritdata <- read_tsv(
  url_delim, 
  col_names = FALSE,
  n_max = 10)

> meritdata
# A tibble: 10 × 5
           X1    X2 X3                       X4      X5
        <dbl> <dbl> <chr>                 <dbl>   <dbl>
 1 1713494644     1 178336.msg63963894  1112467  120694
 2 1713494507     1 178336.msg63963881   120694 1112467
 3 1713494223     1 178336.msg63963828   120694   67210
 4 1713492521     1 178336.msg63963816  3545203  120694
 5 1713491786     1 178336.msg63961147   252510  998490
 6 1713491109     2 5493309.msg63960080   85033   27470
 7 1713490390     1 178336.msg63963412   120694 1112467
 8 1713490046     1 3336968.msg63950158  983960  941526
 9 1713488934     1 138109.msg63963704    64507 3545203
10 1713487395     2 5490062.msg63949896 2850161  334783

# User defined names
my_names <- c("maybe_id", "maybe_factor", "some_msg", "a_number", "another_number")

meritdata <- read_tsv(
  url_delim, 
  col_names = my_names,
  n_max = 10)

> meritdata
# A tibble: 10 × 5
     maybe_id maybe_factor some_msg            a_number another_number
        <dbl>        <dbl> <chr>                  <dbl>          <dbl>
 1 1713494644            1 178336.msg63963894   1112467         120694
 2 1713494507            1 178336.msg63963881    120694        1112467
 3 1713494223            1 178336.msg63963828    120694          67210
 4 1713492521            1 178336.msg63963816   3545203         120694
 5 1713491786            1 178336.msg63961147    252510         998490
 6 1713491109            2 5493309.msg63960080    85033          27470
 7 1713490390            1 178336.msg63963412    120694        1112467
 8 1713490046            1 3336968.msg63950158   983960         941526
 9 1713488934            1 138109.msg63963704     64507        3545203
10 1713487395            2 5490062.msg63949896  2850161         334783

创建于 2024-04-23,使用 reprex v2.1.0

© www.soinside.com 2019 - 2024. All rights reserved.