相关疑难解决方法(0)

R reshape2'聚合函数丢失:默认为长度'

我已经在SO上多次看过这次重塑2但是没有找到解决我特定问题的方法;

我有这样的数据集;

head(data)
student    test    score
Adam      Exam1     80
Adam      Exam2     90
John      Exam1     70
John      Exam2     60
Run Code Online (Sandbox Code Playgroud)

我试图将其转换为看起来像这样的宽格式;

Student    Exam1    Exam2 ........ ExamX
Adam         80       90
John         70       60
Run Code Online (Sandbox Code Playgroud)

使用;

dcast(data,student~test,value.var='score')
Run Code Online (Sandbox Code Playgroud)

但数据最终看起来像这样的东西;

Student    Exam1     Exam2
Adam        0          0
John        0          1
Run Code Online (Sandbox Code Playgroud)

有这个错误;

Aggregation function missing: defaulting to length
Run Code Online (Sandbox Code Playgroud)

任何想法为什么它将所有这些值更改为(0或1)?

r reshape2

19
推荐指数
1
解决办法
4万
查看次数

删除重复组合(无论顺序如何)

我有一个整数数据帧,它是1 ... n的所有n选择3组合的子集.例如,对于n = 5,它类似于:

      [,1] [,2] [,3]
 [1,]    1    2    3
 [2,]    1    2    4
 [3,]    1    2    5
 [4,]    1    3    4
 [5,]    1    3    5
 [6,]    1    4    5
 [7,]    2    1    3
 [8,]    2    1    4
 [9,]    2    1    5
[10,]    2    3    4
[11,]    2    3    5
[12,]    2    4    5
[13,]    3    1    2
[14,]    3    1    4
[15,]    3    1    5
[16,]    3    2    4
[17,]    3    2    5
[18,]    3    4    5 …
Run Code Online (Sandbox Code Playgroud)

combinations r

14
推荐指数
1
解决办法
4573
查看次数

dcast错误:'遗漏聚合函数:默认为长度'

df看起来像这样:

Id  Task Type    Freq  
3     1    A       2
3     1    B       3
3     2    A       3
3     2    B       0
4     1    A       3
4     1    B       3
4     2    A       1
4     2    B       3
Run Code Online (Sandbox Code Playgroud)

我想通过Id进行重组并得到:

Id   A    B …  Z    
3    5    3      
4    4    6        
Run Code Online (Sandbox Code Playgroud)

我试过了:

df_wide <- dcast(df, Id + Task ~ Type, value.var="Freq")
Run Code Online (Sandbox Code Playgroud)

并得到错误:

聚合函数缺失:默认为长度

我无法弄清楚要放什么fun.aggregate.有什么问题?

r reshape reshape2 data.table

12
推荐指数
1
解决办法
7442
查看次数

从R中的数据框中删除重复列组合

我想从以下数据中删除sessionid,qf和qn的重复组合

               sessionid             qf        qn         city
1  9cf571c8faa67cad2aa9ff41f3a26e38     cat   biddix          fresno
2  e30f853d4e54604fd62858badb68113a   caleb     amos                
3  2ad41134cc285bcc06892fd68a471cd7  daniel  folkers                
4  2ad41134cc285bcc06892fd68a471cd7  daniel  folkers                
5  63a5e839510a647c1ff3b8aed684c2a5 charles   pierce           flint
6  691df47f2df12f14f000f9a17d1cc40e       j    franz prescott+valley
7  691df47f2df12f14f000f9a17d1cc40e       j    franz prescott+valley
8  b3a1476aa37ae4b799495256324a8d3d  carrie mascorro            brea
9  bd9f1404b313415e7e7b8769376d2705    fred  morales       las+vegas
10 b50a610292803dc302f24ae507ea853a  aurora      lee                
11 fb74940e6feb0dc61a1b4d09fcbbcb37  andrew    price       yorkville 
Run Code Online (Sandbox Code Playgroud)

我将数据读入data.frame并将其称为mydata.Heree是我到目前为止的代码,但我需要知道如何正确地对data.frame进行排序.其次删除sessionid,qf和qn的重复组合.最后用qf列中的直方图字符绘制图形

sortDATA<-function(name)
{
#sort the code by session Id, first name, then last name
sort1.name <- name[order("sessionid","qf","qn") , ]
#create a vector of length …
Run Code Online (Sandbox Code Playgroud)

r dataframe ignore-duplicates

4
推荐指数
1
解决办法
2万
查看次数