-2

Excel ファイルがあり、列 (つまり、3 番目の列の最初の 128 の値) を 1 行ずつ読み取り、リストに保存したいと考えています。各行を読み取って値を抽出するために次のコードを作成しましたが、正しく機能しません。

con<-file("D:\\MA\\excel_mix_meiningen.xls","r")
datalist<-list()
m<-list()
# which column
spalte<-3
#How many values?
for(i in 1:128)
{

  line<-readLines(con,n=1,warn=FALSE)
  datalist<-c(datalist,sapply(line,"[[",spalte))

}
close(con)
datalist

次のエラーが表示されます。

Error in FUN("ÐÏ\021ࡱ"[[1L]], ...) : subscript out of bounds

この仕事をするためのパッケージがあることは知っていますが、このメソッドを使用したい ;)

4

1 に答える 1

1

必要がなければ特別なパッケージを使用する必要はありませんが、コードは非効率的な戦略です。まず、関心のあるワークシートをタブ区切りのテキスト ファイルまたは csv ファイルなどとして保存ますnrows=128。この時点で、保持したい列のみをリストに割り当てます。読み込まれたデータ フレームは?rmで削除できます。

于 2013-11-07T15:52:51.650 に答える