匹配两个dataframes/Tible和copy值的行和列
我有两个数据帧/tibble 第一个(除第一列外,初始化为零):匹配两个dataframes/Tible和copy值的行和列,r,dataframe,data-science,tidyverse,tibble,R,Dataframe,Data Science,Tidyverse,Tibble,我有两个数据帧/tibble 第一个(除第一列外,初始化为零): 任何帮助或建议都将不胜感激。如果我理解正确,您正在尝试使用sum数据帧,并将其转换为与\u df相同的视图(顺便说一句,不要调用数据帧sum,因为它是最常见的R函数之一) 您应该能够使用以下功能: library(tidyverse) sum %>% spread(key = 'cluster_id', value = 'count') 您只需使用tidyverse,然后sum%>%spread(cluster\u id,
任何帮助或建议都将不胜感激。如果我理解正确,您正在尝试使用
sum
数据帧,并将其转换为与\u df
相同的视图(顺便说一句,不要调用数据帧sum
,因为它是最常见的R函数之一)
您应该能够使用以下功能:
library(tidyverse)
sum %>% spread(key = 'cluster_id', value = 'count')
您只需使用tidyverse,然后
sum%>%spread(cluster\u id,count,fill=0)
@DavidKlotz好极了!!谢谢注意,你可能想给你的TIBLE起一个不同的名字,因为sum
是一个基本函数是的,它是一个临时函数。我会给你一个更合理的名字@DavidKlotz顺便说一句,排列后我的列名未排序。这就像SOM1 SOM10而不是SOM1 SOM2。。。
> sum
# A tibble: 3,300 x 3
# Groups: sample_id [33]
sample_id cluster_id count
<fct> <chr> <int>
1 1 SOM1 875
2 1 SOM2 1102
3 1 SOM3 1028
4 1 SOM4 925
5 1 SOM5 10164
6 1 SOM6 5425
7 1 SOM7 1593
8 1 SOM8 290
9 1 SOM9 6180
10 1 SOM10 10850
# … with 3,290 more rows
> df_
# A tibble: 33 x 101
sample_id SOM1 SOM2 SOM3 SOM4 ..... SOM100
<fct> <dbl> <dbl> <dbl> <dbl>
1 1 875 1102 1028 925
2 2 0 0 0 0
3 3 0 0 0 0
4 4 0 0 0 0
5 5 0 0 0 0
.
.
. 33
library(tidyverse)
sum %>% spread(key = 'cluster_id', value = 'count')