2017-05-11 9 views
0

私はHiveに格納されたテーブルをRに読み込み、プロセス内のすべてのカンマを削除したい(私のカラムが壊れていないことを確認するため)。私は、次のコマンドrHadoopClient経由で文字列にカンマを渡すには?

rHadoopClient::read.hive("select regexp_replace(a_column, ',', '$$$'), regexp_replace(b_column, ',', '$$$') from a_table") 

を持って、私は次のエラーを取得する:

FAILED: ParseException line 1:63 cannot recognize input near ',' ',' '35671' in select expression
Error in read.table(file=file, header = header, sep = sep, quote = quote, :

no lines available in input

rHadoopClientの結果:: read.hive機能は、カンマで区切られたテーブルであるので、それは私がカンマを変更不可欠ですクエリ内にあります。

更新:問題を解決する単一引用符と二重引用符を切り替える。

+0

外側に一重引用符を使用してみてください。 –

+0

カンマで区切った表がある場合、どのようにカンマを含む列ですか? –

+0

元はコンマで区切られていないため、read.hive関数の結果はです。 – AVS

答えて

1

問題はカンマではありません。それ以外の場合は、どのように複数の列を選択しますか?

問題は引用符です。

外側に単引用符を使用し、内側に二重引用符を使用してください。

関連する問題