【发布时间】:2013-07-12 18:06:33
【问题描述】:
我有一个包含两个变量(数据点)的文本文件 - 第一个变量用于学生 ID,第二个变量包含每个学生 ID 的一组成绩。
格式为 student_id,{grades}
例如:
0,80,1001,65,71,402,99,50,03,904
表示
student_id=0 has grades{80,100}
student_id=2 has grades{65,71,40} and so on.
我想在R中得到一个数据框如下
student_id grades
0 80,100
1 65,71,40
2 99,50,0
3 90
4
我尝试了以下命令将数据加载到 R
x <- read.delim(file, header=TRUE, row.names=NULL)
这就是我的结局
student_id. .grades.
1 0,80,100
2 1,65,71,40
3 2,99,50,0
4 3,90
5 4
对于如何解决此问题的任何帮助,我将不胜感激。如果您希望我提供更多信息,请告诉我。谢谢!
【问题讨论】:
-
问题没有很好的定义。每个学生有多少个年级?
-
如果他们都只是用逗号分隔,你应该如何区分成绩和学生证,并且每个学生的成绩不一定相同?我什至不是在谈论 R 代码,只是尝试解释一下查看您的示例数据的人如何知道哪个是哪个。
-
我会使用
readLines,然后在逗号上使用strsplit。将第一个之后的所有内容都放入列表中。问题是您不能拥有每行列数不同的 data.frame... -
当然我在这里错过了一些东西,但是这条线在你的例子中做了什么:
0,80,1001,65,71,402,99,50,03,904? -
PS 如果
read.delim为 OP 工作,那么在原始文件中确实存在换行符和制表符分隔符,这是最初的示例搞砸了。
标签: r