2017-04-15 7 views
2

以下のデータフレームがあります。データフレームの列名の変更に失敗しました

> head(weather) 
V6 V7 V8   V9  V10  V11 
1            
2            
3            
4 Day Hour Value  Unit Duration QC Name 
5 1 0 231 \xb5g/m\xb3  1 Hr Valid 
6 1 1 239 \xb5g/m\xb3  1 Hr Valid 

もみ3行が空で、列名はV11からV6です。 4列目を列名として使用したいと思います。私は以下の方法を試しましたが、動作しません。

colnames(weather) <- weather[4,] 

コマンド上記の実行後に、私の列名は次のようになります。これらの値はどこから来た私にはわからない

> colnames(weather) 
[1] "33" "26" "427" "3" "3" "3" 

。データフレーム内の列名を更新するにはどうすればよいですか?

答えて

1

このエラーは、列のクラスによるものです。それはfactorとなるでしょう。integer保管モードです。これはskip引数で読み取ることによって、そのルートに整流することができ

weather <- read.csv("yourfile.csv", skip=4, header=TRUE, stringsAsFactors=FALSE) 

我々はcharacter

colnames(weather) <- as.character(unlist(weather[4,])) 
にOPの方法、そして unlist行と変換を使用している場合、
関連する問題