2013-03-27 3 views
0

Заранее благодарю вас за помощь. На веб-сайте переписи США (ниже) я ищу элемент в шестой строке, третьем столбце четвертой таблицы.Как сбросить уровни факторов при очистке данных от HTML-сайта переписи США

Вот код, который я пишу:

complete_URL <- "http://quickfacts.census.gov/qfd/states/01/01011.html" 
temp_TBL <- readHTMLTable(complete_URL, which=4) 
business_number_vector <- temp_TBL[6,3] 
print(business_number_vector) 

Что я получаю:

[1] 417 
Levels: 417 

То, что я хотел бы это:

[1] 417 

Еще раз спасибо так много для ваша помощь!

+3

do: 'as.numeric (as.character (temp_TBL [6,3]))'. Кажется, это переменная 'factor'. – Arun

+0

Арун, ты такой потрясающий. Огромное спасибо. Я не могу сказать, насколько я благодарен. Я уже немного почесываю голову. –

+0

Нет проблем. «фактор» дает это чувство каждому в начале. Помните, что 'as.character' важен до' as.numeric'. Вы можете опубликовать его в качестве ответа и принять его, когда сможете, чтобы вопрос остался ответом. – Arun

ответ

1

Это на самом деле R-FAQ 7,10:

Вы должны быть в состоянии видеть Справку с вашей помощью R-системы(). На моей машине он настроен как HTML:

http://127.0.0.1:23603/doc/manual/R-FAQ.html#How-do-I-convert-factors-to-numeric_003f 

7,10 Как преобразовать факторы в числовой?

Может случиться так, что при чтении числовых данных в R (обычно при чтении в файле) они входят в качестве факторов. Если f является таким факторным объектом, вы можете использовать

as.numeric (as.character (f)) , чтобы вернуть числа. Более эффективно, но сложнее запомнить

as.numeric (levels (f)) [as.integer (f)] В любом случае не вызывайте as.numeric() или их предпочтения непосредственно для задачи под рукой (as.numeric() или unclass() дают внутренние коды).

+0

Должен быть один вопрос с меткой r-faq для каждой проблемы, я думаю, не три (http://stackoverflow.com/questions/16950672 и http://stackoverflow.com/questions/22381154 - это обманы, которые вы также отметили). Кроме того, это ответ только для ссылок (не рекомендуется для SO).Наконец, я понимаю, что тег r-faq предназначен для вопросов, которые часто задаются в SO, а не для чего-либо, на что ответили в документе R-FAQ. (Я не говорю, что это не относится к обоим категориям, просто говорю.) – Frank

+0

Я не понимаю твое первое предложение. Это ссылка на материал, который находится на машине пользователя виртуальным при установке пакета R. Это НЕ «ссылка» на веб-адрес. –

+0

Мое первое предложение и предложение «Наконец» связаны между собой - если есть дубликаты, отметьте их как таковые; а также экономить на использовании тега [tag: r-faq], применяя его только к цели обмана, а не к ее обманам. Re это связь, да, технически это не так, но она имеет ту же самую особенность, что не отвечает на вопрос в теле ответа. Во-первых, вы можете дать правильные инструкции для получения часто задаваемых вопросов (поскольку это не очевидно); и во-вторых, вы можете процитировать все, что вы считаете нужным. В любом случае, мы можем поговорить об этом в комнате общения в R, если есть еще путаница или несогласие. – Frank

0

Arun и Dason условии, что эти ответы:

Arun рекомендует:

complete_URL <- "http://quickfacts.census.gov/qfd/states/01/01011.html" 
temp_TBL <- readHTMLTable(complete_URL, which=4) 
business_number_vector <- as.numeric(as.character(temp_TBL[6,3])) 
print(business_number_vector) 

см 3 линия, где as.numeric(as.character()) помогли большого времени!

Dason рекомендуется:

complete_URL <- "http://quickfacts.census.gov/qfd/states/01/01011.html" 
temp_TBL <- readHTMLTable(complete_URL, which=4) 
business_number_vector <- temp_TBL[6,3] 
business_number_vector <- as.numeric(levels(business_number_vector)[business_number_vector]) 
print(business_number_vector) 

см линия 4, где as.numeric(levels(business_number_vector)[business_number_vector]) также помог большое время!

 Смежные вопросы

  • Нет связанных вопросов^_^