George Clooneyのwikipediaページから職業情報を取得するために、次の構文を使用しようとしています。最終的に私は様々な人格の職業に関するデータを得るためのループが必要です。私はこれが来る続けている理由はわからない引数の長さはゼロです
Error in if (symbol != "role") symbol = NULL : argument is of length zero
:
はしかし、私は以下のコードを実行している次のような問題を取得します。
library(XML)
library(plyr)
url = 'http://en.wikipedia.org/wiki/George_Clooney'
# don't forget to parse the HTML, doh!
doc = htmlParse(url)
# get every link in a table cell:
links = getNodeSet(doc, '//table/tr/td')
# make a data.frame for each node with non-blank text, link, and 'title' attribute:
df = ldply(links, function(x) {
text = xmlValue(x)
if (text=='') text=NULL
symbol = xmlGetAttr(x, 'class')
if (symbol!='role') symbol=NULL
if(!is.null(text) & !is.null(symbol))
data.frame(symbol, text) })
デバッグのアドバイス:http://stackoverflow.com/a/5156351/636656具体的には、ここで 'options(error = recover)'を試してください。 –
問題は 'symbol'が' NULL'です。 'if(NULL!=" role ")print( 'test')'がどうなるか見てみましょう。 'if(!is.null(シンボル)&& symbol!= 'role')symbol < - NULL' – GSee
kableで' col.names = my_column_names'を使用してください(これは、あなたのコードを実行しませんでしたが、 ) 'my_column_names'はあなたの望む名前の文字ベクトルです。 –