最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決Pandas to_json()中文亂碼,轉(zhuǎn)化為json數(shù)組的問題

 更新時間:2018年05月10日 16:33:49   作者:FontTian  
今天小編就為大家分享一篇解決Pandas to_json() 中文亂碼,轉(zhuǎn)化為json數(shù)組的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

問題出現(xiàn)與解決

Pandas進(jìn)行數(shù)據(jù)處理之后,假如想將其轉(zhuǎn)化為json,會出現(xiàn)一個bug,就是中文文字是以亂碼存儲的,也就是\uXXXXXX的形式,翻了翻官網(wǎng)文檔,查了源碼的參數(shù),(多謝網(wǎng)友提醒)需要設(shè)置js001 = df1.to_json(force_ascii=False),即可顯示中文編碼

以下是原文的額外內(nèi)容,DataFrame 轉(zhuǎn)化為json數(shù)組

于是決定自己寫一個.首先用demojson的類庫嘗試了一下,不行,依舊編碼問題.之后考慮python 原生的 json 應(yīng)該有編碼轉(zhuǎn)換功能,查了查官網(wǎng)文檔,確實可以,不過要比平時多加一個參數(shù)

listXY_json = json.dumps(listXY, sort_keys=True, indent=4, ensure_ascii=False) #ensure_ascii:默認(rèn)值True,如果數(shù)據(jù)中含有非ASCII的字符,則會類似\uXXXX的顯示數(shù)據(jù),設(shè)置成False后,就能正常顯示

既然找到解決亂碼的方法,那么想要將pandas中的數(shù)據(jù)類型存儲到j(luò)son中就只需要先將其轉(zhuǎn)換為python自帶的數(shù)據(jù)類型,再利用 json 類庫其轉(zhuǎn)換為json格式并存儲就可以了,因為我自己是為了將python處理好的數(shù)據(jù)轉(zhuǎn)換為json數(shù)組,然后利用echarts生成表格,所以我將其封裝為了一個類,源碼在最后

存儲的的json前后對比

df1 = pd.DataFrame(pd.read_excel(u'excel/袁隆平院士報告處理后.xlsx'))
js001 = df1.to_json(force_ascii=False)
with open('json/testjson.json', 'w') as f:
 f.write(js001)
# "16":6,"17":6,"18":3,"19":4},"content":{"0":"研究調(diào)改王玉田院士項目入駐協(xié)議,完成簽約儀式方案","1":"\u5b
#處理后
df1 = pd.DataFrame(pd.read_excel(u'excel/袁隆平院士報告處理后.xlsx'))
dfts = DataFrameToJSONArray(df1, 'json/wyt_xyz.json') # 參數(shù)(df數(shù)據(jù),文件存儲路徑)
dfts.funChangeDataFrameType() # 自動轉(zhuǎn)換DataFrame的列數(shù)據(jù)類型
dfts.funSaveJSONArrayFile() # 存儲JSON格式文件
# [["2016-08-08", "袁隆平院士觀摩指導(dǎo)"], ["2016-08-09","修改完善袁隆平院士項目合作協(xié)議"],["2016-08-10","完成袁隆平院士合作協(xié)議"],["2016-08-31","袁隆平院士項目入駐院士港協(xié)議審核完畢"],....]

DataFrameToJSONArray()源碼

# - * - coding: utf - 8 -*-
#
# 作者:田豐(FontTian)
# 創(chuàng)建時間:'2017/7/16'
# 郵箱:fonttian@Gmaill.com
# CSDN:http://blog.csdn.net/fontthrone
import sys
import pandas as pd
import json
import re
reload(sys)
sys.setdefaultencoding('utf-8')
class DataFrameToJSONArray():
  def __init__(self, dataframe, filepath='DataFrameToJSONArrayFile.json'):
    self.__DataFrame = dataframe
    self.__FilePath = filepath
  def funChangeDataFrameType(self):
    for i in range(len(self.__DataFrame.columns)):
      s = re.sub(r'\'>', '', re.sub(r'\d', '', str(type(self.__DataFrame.iloc[:, i][0])))).replace('\'', ' ').replace('.',
                                                        ' ').split(
        ' ')[-1]
      if s == 'Timestamp':
        self.__DataFrame.iloc[:, i] = self.__DataFrame.iloc[:, i].astype(unicode)
      else:
        self.__DataFrame.iloc[:, i] = self.__DataFrame.iloc[:, i].astype(s)
    return self.__DataFrame
  def funSaveJSONArrayFile(self):
    list001 = []
    for i in range(len(self.__DataFrame.columns)):
      list001.append(list(self.__DataFrame.iloc[:, i]))
    list002 = []
    list003 = []
    for i in range(len(list001[0])):
      for j in range(len(self.__DataFrame.columns)):
        list003.append(list001[j][i])
      list002.append(list003)
      list003 = []
    Final_JSON = json.dumps(list002, sort_keys=True, indent=4, ensure_ascii=False)
    with open(self.__FilePath, 'w') as f:
      f.write(Final_JSON)
    return Final_JSON

def init(self, dataframe, filepath='DataFrameToJSONArrayFile.json') dataframe需要傳入的數(shù)據(jù),filepath,json文件存儲路徑

funChangeDataFrameType() 自動轉(zhuǎn)換DataFrame數(shù)據(jù)類型,返回轉(zhuǎn)換后的DataFrame

funSaveJSONArrayFile() 保存文件

以上這篇解決Pandas to_json()中文亂碼,轉(zhuǎn)化為json數(shù)組的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python Opencv計算圖像相似度過程解析

    python Opencv計算圖像相似度過程解析

    這篇文章主要介紹了python Opencv計算圖像相似度過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • Pytorch反向求導(dǎo)更新網(wǎng)絡(luò)參數(shù)的方法

    Pytorch反向求導(dǎo)更新網(wǎng)絡(luò)參數(shù)的方法

    今天小編就為大家分享一篇Pytorch反向求導(dǎo)更新網(wǎng)絡(luò)參數(shù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python圖像處理之模糊圖像判斷

    Python圖像處理之模糊圖像判斷

    這篇文章主要為大家詳細(xì)介紹了Python圖像處理中的模糊圖像判斷的實現(xiàn),文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的可以參考一下
    2022-12-12
  • Python內(nèi)置函數(shù)dir詳解

    Python內(nèi)置函數(shù)dir詳解

    這篇文章主要介紹了Python內(nèi)置函數(shù)dir詳解,本文講解了命令介紹、使用實例、使用dir查找module下的所有類、如何找到當(dāng)前模塊下的類等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • 對Python捕獲控制臺輸出流的方法詳解

    對Python捕獲控制臺輸出流的方法詳解

    今天小編就為大家分享一篇對Python捕獲控制臺輸出流的方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python 40行代碼實現(xiàn)人臉識別功能

    Python 40行代碼實現(xiàn)人臉識別功能

    很多人都認(rèn)為人臉識別是一項非常難以實現(xiàn)的工作,看到名字就害怕,然后心懷忐忑到網(wǎng)上一搜,看到網(wǎng)上N頁的教程立馬就放棄了。其實如果你不是非要深究其中的原理,只是要實現(xiàn)這一工作的話,人臉識別也沒那么難。今天我們就來看看如何在40行代碼以內(nèi)簡單地實現(xiàn)人臉識別。
    2017-04-04
  • python使用wxpy實現(xiàn)微信消息防撤回腳本

    python使用wxpy實現(xiàn)微信消息防撤回腳本

    這篇文章主要為大家詳細(xì)介紹了python使用wxpy實現(xiàn)微信消息防撤回腳本,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • selenium攜帶cookies模擬登陸CSDN的實現(xiàn)

    selenium攜帶cookies模擬登陸CSDN的實現(xiàn)

    這篇文章主要介紹了selenium攜帶cookies模擬登陸CSDN的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 用Python展示動態(tài)規(guī)則法用以解決重疊子問題的示例

    用Python展示動態(tài)規(guī)則法用以解決重疊子問題的示例

    這篇文章主要介紹了用Python展示動態(tài)規(guī)則法用以解決重疊子問題的一個棋盤游戲的示例,動態(tài)規(guī)劃常常適用于有重疊子問題和最優(yōu)子結(jié)構(gòu)性質(zhì)的問題,且耗時間往往遠(yuǎn)少于樸素解法,需要的朋友可以參考下
    2015-04-04
  • tensorflow模型繼續(xù)訓(xùn)練 fineturn實例

    tensorflow模型繼續(xù)訓(xùn)練 fineturn實例

    今天小編就為大家分享一篇tensorflow模型繼續(xù)訓(xùn)練 fineturn實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01

最新評論

西青区| 乌什县| 香格里拉县| 乌兰浩特市| 甘孜| 四川省| 洮南市| 揭东县| 子长县| 务川| 漳平市| 游戏| 宽甸| 调兵山市| 尉犁县| 革吉县| 通辽市| 铁岭县| 东海县| 泽州县| 德钦县| 云南省| 彭州市| 垦利县| 亳州市| 柳林县| 喀喇| 泸州市| 巴楚县| 文昌市| 容城县| 遂溪县| 舒城县| 博湖县| 牡丹江市| 历史| 六枝特区| 灵石县| 咸丰县| 乡城县| 元江|