将所有数据保存在一起 - 一个主文件

时间:2014-02-27 14:29:02

标签: r

我的数据存在问题。我想将我的数据保存在一个文件中。我加载到R中的csv文件很少。

 > list_of_data
 [1] "Weight.csv" "Lenght.csv" "Age.csv" "Place of Birth.csv"           
 [5] "Sex.csv" "Driver License.csv" "Nationality.csv" 

在每个文件中,我都有一个关于患者的信息:

Weight.csv:

Name    Weight         
Mark      76
Criss     82
Kate      61
Robb      80
Denis     72

Age.csv:

Name      Age         
Mark      19
Criss     17
Kate      24
Robb      33
Denis     23

我想将所有信息移动到一个矩阵。所以我创建了一个新矩阵:

data_mat <- matrix(0, nrow = 5,ncol = 7)
colnames(data_mat) <- c("Name", "Weight", "Lenght", "Age", "Place of Birth", "Sex", "Driver License", "Nationality")
rownames(data_mat) <- c("Mark", "Criss", "Kate", "Robb", "Denis")

我不知道如何告诉R在其他csv文件中找到有关患者的信息,并将它们放在我的新矩阵中。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您将要将所有个人csv合并在一起。

dat.all<-merge(csv1,csv2,by="name")
dat.all<-merge(dat.all,csv3,by="name")
...

只需在所有csv文件中执行此操作,然后您将拥有所需的内容

答案 1 :(得分:1)

您还可以在所有文件中使用cbind,删除除第一个文件以外的所有文件的name列。

Weight <- data.frame(Name = c("Mark", "Criss", "Kate"), Weight = c(76, 82, 61))
Age <- data.frame(Name = c("Mark", "Criss", "Kate"), Age = c(19, 17, 24))

cbind(Weight, Age = Age[, "Age"])
##    Name Weight Age
## 1  Mark     76  19
## 2 Criss     82  17
## 3  Kate     61  24