2017-10-03 4 views
0

でusa.govデータを読み取ることができ、アーカイブデータUSA GOV Sample DataないPythonやR

を通過してください今、私はRでこのファイルを読むことをお勧めしますが、その後に述べたエラーの下

result = fromJSON(textFileName) 
Error in fromJSON(textFileName) : unexpected character 'u' 

を取得しますその後、前述のエラーの下になってPythonでそれを読むために

import json 
records = [json.loads(line) for line in open(path)] 

--------------------------------------------------------------------------- 
 
UnicodeDecodeError      Traceback (most recent call last) 
 
codecs.charmap_decode(input,self.errors,decoding_table)[0] 
 
    24 
 
    25 class StreamWriter(Codec,codecs.StreamWriter): 
 

 
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 4088: character maps to <undefined>

私はこの種のファイルをどのように読むことができますか教えてください。

+1

DunnoはRですが、あなたのPythonサンプルは私のために働いています(Python 2.7/Linux)。おそらく、 "for"ループ内のeahラインを解析して、このエンコーディングの問題をどのラインがトリガーするのかを調べるべきでしょう。 – glenfant

+0

utf8エンコーディングでファイルを開く必要があります –

答えて

0

私のシステム上の質問に提供されたOPコード(Windows/Rstudio/Jupyter)を取得できませんでした。私の周りを掘るとR用thisを見つけ、この場合にそれを適応:

library(jsonlite) 
out <- lapply(readLines("usagov_bitly_data2013-05-17-1368817803"), fromJSON) 
df<-data.frame(Reduce(rbind, out)) 

私はRに入ったエラーがあなたから妙に異なっているが。

result = fromJSON("usagov_bitly_data2013-05-17-1368817803") 
#Error in parse_con(txt, bigint_as_char) : parse error: trailing garbage 
#   [ 34.730400, -86.586098 ] } { "a": "Mozilla\/5.0 (Windows N 
#      (right here) ------^ 

juanpaで言及されているように、それはエンコーディングの問題のようです。次のコードは私のために働く。

import json 
import os 
path=os.path.abspath("usagov_bitly_data2013-05-17-1368817803") 
print(path) 
file = open(path, encoding="utf8") 
records = [json.loads(line) for line in file] 
+0

はい、Pythonで動作しますが、おかげさまでRにまだエラーが表示されています – Vineet

関連する問題