Read.csv ile üç sütundan yalnızca ikisini okuma


12

Üç sütundan oluşan bir ascii veri kümem var, ancak yalnızca son ikisi gerçek verilerdir. Şimdi kullanarak bir nokta grafiği oluşturmak istiyorum read.csv(file = "result1", sep= " "). R üç sütunu da okur. Bundan nasıl kaçınırım?


5
Onu burada bırakacağım, ancak lütfen StackOverflow ile ilgili gelecekteki temel R sorularını sorun .

Aslında, şu andaki fikir birliği, R sorularının CV'de hoş karşılandığı gibi görünüyor. Şu anda tartışmayı bulamıyorum, ancak meta.stats.stackexchange.com'da bir yerlerde .
Waldir Leoncio

Yanıtlar:


20

İstediğiniz sütunları seçmek için colClassesbağımsız değişkeni kullanabilirsiniz read.csv. Bu durumda, ayarlayabilirsiniz colClassesiçinc("NULL", NA, NA)

read.csv(file="result1", sep=" ", colClasses=c("NULL", NA, NA))

Daha genel olarak, belirli sütun türlerini belirtmek için colClasses'u kullanabilirsiniz; NAsütunun otomatik olarak ne olduğunu bulmaya çalışmak olan varsayılan yaklaşımı kullanmak anlamına gelir. Daha read.csvfazla bilgi için yardım sayfasına bakın.


11

Başka bir seçenek dosyanın tamamını okumaktır, ancak sütunlardan yalnızca ikisini saklamaktır, örneğin:

read.csv(file = "result1", sep = " ")[ ,1:2]

veya sütun adlarını kullanarak, ör. sütunlara 'col1, col2, col3' adı verilmişse

read.csv(file = "result1", sep = " ")[ ,c('col1', 'col2')]

@Brian'ın cevabı sizinkine kıyasla daha az zaman alıyor.
Haroon Rashid

0

Bu, verilen cevaplara kıyasla daha az zaman alıyor

library(data.table)
fread(file="result1", sep=" ", colClasses=c("NULL", NA, NA))
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.