簡體   English   中英

在 map function 中包含表中的列名

[英]Mantain column names in map function with table

我在 object HRdata 中存儲了以下數據:

            ï..Employee_Name       PositionID              Position State  Zip
      1:   Adinolfi, Wilson  K         19  Production Technician I    MA 1960
      2: Ait Sidi, Karthikeyan         27                  Sr. DBA    MA 2148
      3:     Akinkuolie, Sarah         20 Production Technician II    MA 1810
      4:          Alagbe,Trina         19  Production Technician I    MA 1886
      5:       Anderson, Carol         19  Production Technician I    MA 2169
     ---                                                                     
    307:        Woodson, Jason         20 Production Technician II    MA 1810
    308:     Ybarra, Catherine         19  Production Technician I    MA 2458
    309:      Zamora, Jennifer          6                      CIO    MA 2067
    310:           Zhou, Julia          9             Data Analyst    MA 2148
    311:         Zima, Colleen         19  Production Technician I    MA 1730

我正在使用 map function 來表 data.frame 中每個變量中的唯一實例。

HRtables <- map(tibble(HRdata), ~as.data.frame(sort(table(.x), decreasing = T, responseName = "n")))

它列出了一個很好的列表,但 output 不是我喜歡的:

    > HRtables$State
   .x Freq
1  MA  276
2  CT    6
3  TX    3
4  VT    2
5  AL    1
6  AZ    1
7  CA    1
8  CO    1
9  FL    1
10 GA    1
11 ID    1
12 IN    1
13 KY    1

有什么辦法可以保留變量的原始名稱而不是用.x替換它?

我想您可以使用map2傳入 data.frame 的列names 然后,您可以為包含列名的table包含dnn參數。 也許這樣的事情可能對你有用。

library(tidyverse)

map2(HRdata,
     names(HRdata),
     ~as_tibble(sort(table(.x, dnn = .y), decreasing = T)))

暫無
暫無

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

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