Tôi đang cố gắng để đọc một tập tin văn bản với độ dài hàng khác nhau:Nhập dữ liệu vào R với số cột không xác định?
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
Để khắc phục vấn đề này, tôi đang sử dụng lập luận fill = TRUE trong read.table, vì vậy:
data<-read.table("test",sep="\t",fill=TRUE)
Thật không may, để đánh giá độ dài hàng tối đa, read.table đọc chỉ 5 dòng đầu tiên của tập tin, và tạo ra một đối tượng tìm kiếm như thế này:
data
V1 V2 V3 V4 V5
1 1 NA NA NA NA
2 1 2 NA NA NA
3 1 2 3 NA NA
4 1 2 3 4 NA
5 1 2 3 4 5
6 1 2 3 4 5
7 6 NA NA NA NA
8 1 2 3 4 5
9 6 7 NA NA NA
10 1 2 3 4 5
11 6 7 8 NA NA
có AW ay để buộc read.table cuộn qua toàn bộ tập tin để đánh giá chiều dài hàng tối đa? Tôi biết một giải pháp khả thi sẽ được cung cấp số cột, như:
data<-read.table("test",sep="\t",fill=TRUE,col.names=c(1:8))
Nhưng kể từ khi tôi có rất nhiều tác phẩm, tôi muốn đánh giá này tự động trong vòng R. Bất kỳ đề nghị? :-)
EDIT: tập tin gốc không chứa số tiến bộ, vì vậy đây không phải là một giải pháp:
data1<-read.table("test",sep="\t",fill=TRUE)
data2<-read.table("test",sep="\t",fill=TRUE,col.names=c(1:max(data1))
bạn có thể đặt một tiêu đề trong file (tức là các tệp có định dạng nhất quán) không? – Shane
Thật không may là không, các tệp được tạo ra bên ngoài và mỗi hàng có thể có số lượng mục nhập ngẫu nhiên. –