Tôi đang đọc tệp dữ liệu ở định dạng văn bản bằng cách sử dụng readLines
. Cột 'đầu tiên' đầu tiên là văn bản phức tạp mà tôi không cần. Các cột tiếp theo chứa dữ liệu mà tôi cần. Cột 'đầu tiên' đầu tiên và dữ liệu được phân tách bằng dấu hai chấm (:). Tôi muốn chia từng hàng tại dấu hai chấm đầu tiên và xóa chuỗi văn bản kết quả, chỉ giữ lại dữ liệu.Tách chuỗi tại dấu hai chấm đầu tiên
Dưới đây là tệp dữ liệu ví dụ. Một biến chứng tiềm năng là một dòng dữ liệu chứa nhiều dấu hai chấm. Dòng đó có thể tại một số điểm trở thành tiêu đề của tôi. Vì vậy, tôi có lẽ không nên phân chia ở mọi đại tràng, ngay tại đại tràng đầu tiên.
my.data <- "first string of text..: aa : bb : cc
next string ........ : 2 0 2
third string......1990: 7 6 5
last string : 4 2 3"
my.data2 <- readLines(textConnection(my.data))
my.data2
Tôi đã thử mã trình bày ở đây:
Split on first comma in string
và ở đây:
R: removing the last three dots from a string
Mã tại liên kết đầu tiên trên dường như tách chỉ ở ruột kết đầu tiên của Dòng đầu tiên. Mã số ở liên kết thứ hai có thể sẽ làm những gì tôi muốn, nhưng quá phức tạp để tôi sửa đổi nó thành công cho đến nay.
Sau đây là các dữ liệu tôi hy vọng để có được, lúc này tôi chỉ có thể thay thế các dấu hai chấm còn lại trong hàng đầu tiên với khoảng trống bằng một gsub
tuyên bố rất đơn giản:
aa : bb : cc
2 0 2
7 6 5
4 2 3
Xin lỗi nếu điều này là một bản sao của một bài đăng mà tôi chưa xác định và cảm ơn bạn vì bất kỳ lời khuyên hoặc trợ giúp nào.
Cảm ơn bạn đã trả lời và giải thích nổi bật. –
+1 để giải thích –