2016-11-30 8 views
0

select()関数の後にgroup_by()関数を使用します。
しかし、プログラムの下にエラーメッセージが表示されます。私はどうすればいいですか?select()関数の後にgroup_by()関数を適用します。

CODE:

library(tidyverse) 
dt <- data.frame("トヨタ" = c(1,2,3,4), 
       "ホンダ" = c(4,3,2,1), 
       "グループ" = c(1,2,1,2)) 

dt %>% 
    select(`トヨタ`, `グループ`) %>% 
    group_by(`トヨタ`) 

RESULT:

Error: unknown column 'トヨタ'

エンコーディングであるUTF-8

CODE:

dt %>% 
    select(`トヨタ`,`グループ`) %>% 
    names(.) %>% Encoding 

RES ULT:

[1] "UTF-8" "UTF-8"

+0

あなたのコードは、私のMacで作業しています。エラーメッセージは表示されません。 – jazzurro

+0

OSがウィンドウです(エラーメッセージが表示されます)。 このprobremはOSに依存していますか? – ogw

+0

OSに関連する問題であるかどうかは不明です。 – jazzurro

答えて

0

最初data.frameの列名のエンコーディングは "未知" です。
select()の後に、列名のエンコーディングが "UTF-8"に変更されました。

まずデータのエンコード:

> names(dt) %>% Encoding 
[1] "unknown" "unknown" "unknown" 

一時的な措置:

dt %>% 
    select(`トヨタ`, `グループ`) %>% 
    `colnames<-`(enc2native(colnames(.))) %>% 
    group_by(`トヨタ`) 

ありがとう:http://notchained.hatenablog.com/entry/2016/04/29/222453

+0

を使ってUbuntu 16.04でコードがすでに動作しています:https://github.com/hadley/dplyr/pull/2382 – ogw

関連する問題