簡體   English   中英

如何重塑這些數據?

[英]How do I reshape this data?

希望有人可以幫助我。

我有這個數據集:在此處輸入圖像描述

我想像這樣生產一個 dataframe :

在此處輸入圖像描述

我已經嘗試了很多不同的方法,使用 tidyverse、baseR 來做到這一點,但我似乎找不到解決方案。

有人可以幫忙嗎?

也許像

df %>% pivot_longer(cols = -Subject, names_to = c("Gender", "Age"), names_sep = "_")

但是沒有任何可粘貼的樣本數據,很難檢查。

請閱讀如何提出一個好問題以及如何給出一個可重復的例子 以屏幕截圖的形式共享數據不是獲得幫助的正確方式。


為了重現性,我手動創建了一個與您的數據相似的示例數據集。

df <- data.frame(Subject = c('ID986', 'ID407'), M_22_25 = c(4, 5), 
                 M_31_35 = NA, F_31_35 = NA, M_26_30 = c(2, 3))
df

#  Subject M_22_25 M_31_35 F_31_35 M_26_30
#1   ID986       4      NA      NA       2
#2   ID407       5      NA      NA       3

您可以使用tidyr::pivot_longer來獲取所需結構中的數據。

tidyr::pivot_longer(df, 
                    cols = -Subject, 
                    names_to = c('Gender', 'Age'), 
                    names_pattern = '(M|F)_(.*)', 
                    values_drop_na = TRUE)

#  Subject Gender Age   value
#  <chr>   <chr>  <chr> <dbl>
#1 ID986   M      22_25     4
#2 ID986   M      26_30     2
#3 ID407   M      22_25     5
#4 ID407   M      26_30     3

暫無
暫無

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

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