簡體   English   中英

如何使用向量類型的列創建一個小標題?

[英]How can I make create a tibble with a column that is of type vector?

說我有看起來像這樣的小標題

tib1 < tibble(x = 1:5, y = 0)
Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   5 obs. of  2 variables:
 $ x: int  1 2 3 4 5
 $ y: num  0 0 0 0 0

我怎樣才能讓列 y 看起來像這樣:

$ x: int 1 2 3 4 5
$ y: vector c(1,0,0,0,0) c(0,1,0,0,0) c(0,0,1,0,0) ...

一些幫助將不勝感激。

我們可以使用tabulate並根據'x'的值創建一個list

library(dplyr)
library(purrr)
tib1 %>% 
     mutate(y = map(x, ~ tabulate(.x,  max(x)))) 

在基地 R

library(tibble)
n <- 5
tib1 <- tibble(x = 1:n, y = split(diag(n), rep(1:n, n)))

會給

> tib1$x
[1] 1 2 3 4 5
> tib1$y
$`1`
[1] 1 0 0 0 0

$`2`
[1] 0 1 0 0 0

$`3`
[1] 0 0 1 0 0

$`4`
[1] 0 0 0 1 0

$`5`
[1] 0 0 0 0 1

暫無
暫無

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

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