Невизначені стовпці, вибрані при підстановці кадру даних


80

У мене є фрейм даних, str(data)щоб показати більше про мій фрейм даних, результат такий:

> str(data)
'data.frame':   153 obs. of  6 variables:
$ Ozone  : int  41 36 12 18 NA 28 23 19 8 NA ...
$ Solar.R: int  190 118 149 313 NA NA 299 99 19 194 ...
$ Wind   : num  7.4 8 12.6 11.5 14.3 14.9 8.6 13.8 20.1 8.6 ...
$ Temp   : int  67 72 74 62 56 66 65 59 61 69 ...
$ Month  : int  5 5 5 5 5 5 5 5 5 5 ...
$ Day    : int  1 2 3 4 5 6 7 8 9 10 ...

Однак, наприклад, коли я хочу задати суми Ozoneвище 14, я використовую такий код, який видає мені помилку:

>  data[data$Ozone > 14 ]

Помилка в [.data.frame(дані, дані $ Озон> 14): вибрано невизначені стовпці


12
вам не вистачає коми. Помилка повідомляє вам, що ви не вказали, які стовпці слід включити у свою підмножину.
Рікардо Сапорта,

1
Іншими словами, пам’ятайте, що посилання на кадри даних потребують ідентифікаторів рядків і стовпців. Ви можете вибрати лише один стовпець або всі стовпці, але вам потрібно вказати, що ви хочете.
Scott C Wilson

6
Я працюю над тим самим завданням, тому знаю, що це домашнє завдання. Слабкий соус.
Brian MacKay

Відповіді:


154

Вам потрібні рядки, де ця умова відповідає дійсності, тому вам потрібна кома:

data[data$Ozone > 14, ]

19
Чому ... цей синтаксис для мене не має сенсу
Reinderien

3
@Reinderien Це поширений спосіб індексації масивів. Перегляньте стару шкільну документацію R, яка насправді дуже добре навчає структур даних.
Арі Б. Фрідман

2
Я отримую все, крім коми.
Reinderien

11
dat[ 1, 2 ]дає вам запис у першому рядку, другому стовпці. dat[ 1, ]дає вам кожен запис у першому рядку. dat[ 1:5, ]дає вам кожен стовпець рядків 1-5.
Арі Б. Фрідман

6
Це 153 х 6, це два виміри.
Арі Б. Фрідман,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.