Alo*_*lon 9 python dataframe pandas
当使用to_json将数据存储在json对象中,并使用read_json读回它时,将按字母顺序返回行和列.有没有办法在检索时保持结果排序或重新排序?
DSM*_*DSM 15
您可以使用orient='split',它将索引和列信息存储在列表中,从而保留顺序:
In [34]: df
Out[34]:
A C B
5 0 1 2
4 3 4 5
3 6 7 8
In [35]: df.to_json(orient='split')
Out[35]: '{"columns":["A","C","B"],"index":[5,4,3],"data":[[0,1,2],[3,4,5],[6,7,8]]}'
In [36]: pd.read_json(df.to_json(orient='split'), orient='split')
Out[36]:
A C B
5 0 1 2
4 3 4 5
3 6 7 8
Run Code Online (Sandbox Code Playgroud)
只记得orient='split'在阅读中使用,或者你会得到
In [37]: pd.read_json(df.to_json(orient='split'))
Out[37]:
columns data index
0 A [0, 1, 2] 5
1 C [3, 4, 5] 4
2 B [6, 7, 8] 3
Run Code Online (Sandbox Code Playgroud)