所以我有CSV格式的数据框:
我想知道如何查找与unique length
和lecturer.id
program.id
program.id.ime.
个length(unique(subset(df, lecturer.id==program.id)))
所以我的结果应该是可变的,这会给我独立 讲授。 讲授。谁在教英语(在我的情况下,我可以从数据或图片看这是10位讲师),以及教授历史的独特讲师的长度等等。所以我想生成以下代码:
如果这个讲座.id匹配这个program.id而不是这个program.id.ime的粘贴长度,这是= 10 othervise粘贴不同长度
我正朝这个方向思考(但这不是我想要的)
aggregate
我在考虑使用program.id
,但我需要根据program.id.ime
和lecturer.id<- c(111, 111,112,126,127,132,139,143,155)
program.id<- c(35,35,35,35,44,44,44,42,42)
program.id.ime<- c('English', 'English', 'English', 'English',
'History', 'History', 'History', 'Sociology', 'Sociology')
df <- data.frame(lecturer.id, program.id, program.id.ime)
生成不同长度的变量。
我数据框的一小部分看起来像这样
foor-loop
所以我知道id 111的讲师正在教授id为35的课程,这个课程名称是英语。我的结果应该是所有讲英语的讲师的长度或数字,以及所有教授历史的讲师的长度等。
因此,当我将R代码与latex(hmisc)组合时,我的输出是一个表(因为数据机密性我删除了一些变量:
我想在括号中生成数字,这是我想要的OUTPUT的例子。通过匹配列自动生成它非常重要。
重点是我正在为单独的讲师做PDF报告,我正在根据他的讲座与讲师进行匹配。 React.render(<Reviews url='stars.json' />, document.getElementById('container'));
。所以输出是一位讲师的PDF报告,第二张图中的表格我需要特定课程的所有讲师的数量。
答案 0 :(得分:3)
使用链接中的数据(将文件名更改为&#39; Miha.csv&#39;)
df1 <- fread('Miha.csv') #in this case, the object will be `data.table`
setDT(df1)[, list(n= uniqueN(lecturer.id)), .(program.id, program.id.ime)
][, program.id.ime:=sprintf('%s (%d)', program.id.ime, n)][, n:=NULL]
# program.id program.id.ime
#1: 35 English (9)
#2: 44 History (4)
#3: 43 Sociology (8)
#4: 34 Politology (21)
#5: 40 Antropology (62)
#6: 41 Music (65)
#7: 116 Music II (10)
或者
setDT(df1)[, list(program.id.ime=sprintf('%s (%d)',
program.id.ime[1L], uniqueN(lecturer.id))) , .(program.id)]
# program.id program.id.ime
# 1: 35 English (9)
# 2: 44 History (4)
# 3: 43 Sociology (8)
# 4: 34 Politology (21)
# 5: 40 Antropology (62)
# 6: 41 Music (65)
# 7: 116 Music II (10)
在数据集中,每个&#39; program.id.ime&#39;有一个&#39; program.id&#39;,所以
{{1}}