簡體   English   中英

R 中的列中的相同名稱

[英]Same names in Columns in R

在R中,我使用的是read_excel function,要導入一些文件,問題是我的文件有一些同名的列,有沒有辦法強制同名? (我知道這不是一個好習慣,但這是一個非常具體的事情)

New names:
* `44228` -> `44228...4`
* `44229` -> `44229...5`
* `44230` -> `44230...6`
* `44231` -> `44231...7`
* `44232` -> `44232...8`

我需要為這些數據名稱使用轉換因子,所以我需要將其與成員的名稱一起保留,它們是數據。

您可以使用read_excel().name_repair參數來控制和關閉 tibble( tibble()應用於列名的檢查。 因此,允許重復名稱:

library("readxl")
library("writexl") # Only needed to generate an example xlsx file

x <- data.frame(a = 1:3, a = 1:3, a = 1:3, check.names = FALSE)
write_xlsx(x, "data.xlsx")

read_xlsx("data.xlsx", .name_repair = "minimal")
#> # A tibble: 3 x 3
#>       a     a     a
#>   <dbl> <dbl> <dbl>
#> 1     1     1     1
#> 2     2     2     2
#> 3     3     3     3

盡管確實知道重復的列名比“壞習慣”更接近語法錯誤,但生成的 object 將以奇怪的方式表現:

df <- read_xlsx("data.xlsx", .name_repair = "minimal")
df$a
#> [1] 1 2 3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM