2017-02-16 12 views
0

私は320行のデータフレームを持っています。私はパンダでndjsonに変換しました:pandas dfとndjsonの間に不正な行数があります

df.to_json('file.json', orient='records', lines=True) 

しかし、データをロードすると、私は200行しか取得しません。

pd.read_json('file.json', orient='records', lines=True) 

私のデータセットは、フィールドでの\n文字が含まれています

with open('file.json') as f: 
    print(len(f.readlines())) 

は200

spark.read.json('file.json').count 

もパンダが正しい行カウント与えるとそれだけをリロード200

を与えています。私はpythonまたは火花でレコードをロードすると、もっと多くの行を持つことを期待しています。

pandas.to_jsonメソッドの問題点は何ですか?

答えて

0

手動でjsonファイルを1行ずつ手動で検査したところ、pandas.to_jsonが誤って書き込まれているようです。 (または仕様を誤解しています)

with open('file.json') as f: 
    j = f.read().replace('},{', '}\n{') 
with open('file.jsonl', 'w') as f: 
    f.write(j) 

ファイル内のエラーを置き換えることで問題が解決されます。

関連する問題