IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> csv转json【在线转换工具】、调整日期格式【python】 -> 正文阅读

[Python知识库]csv转json【在线转换工具】、调整日期格式【python】

目录

一,问题背景

二,解决过程

1,csv转json

2,日期格式调整


一,问题背景

做实验时需要对csv格式的源数据进行处理,主要包括转换为json、调整日期格式两个功能,csv原文件内容如下:

CountyName,Date,apparentTemperatureMax,apparentTemperatureMin,cloudCover,dewPoint,humidity,precipIntensity,precipIntensityMax,precipProbability,precipAccumulation,precipTypeIsRain,precipTypeIsSnow,precipTypeIsOther,pressure,temperatureMax,temperatureMin,visibility,windBearing,windSpeed,NDVI,Yield
Adams,11/30/2014 0:00,18.61,-3.01,0,6.77,0.69,0,0,0,0,0,0,0,1027.95,23.93,6.96,10,9,3.8,136.179718,35.6
Adams,12/1/2014 0:00,25.85,11.39,0.1,12.64,0.72,0,0,0,0,0,0,0,1025.38,25.85,11.39,9.82,78,0.88,133.6225433,35.6
Adams,12/2/2014 0:00,21.5,6.74,0.11,15.44,0.77,0,0,0,0,0,0,0,1025.88,29.93,15.54,9.86,4,6.14,133.3864594,35.6
Adams,12/3/2014 0:00,29.05,6.61,0.12,16.71,0.73,0,0,0,0,0,0,0,1017.8,33.57,17.98,9.98,30,5.91,133.2133331,35.6
Adams,12/4/2014 0:00,31.01,20.31,1,24.31,0.83,0.0024,0.0177,0.59,0.495,0,1,0,1016.56,31.01,27.41,7.58,41,4.38,131.176178,35.6
Adams,12/5/2014 0:00,29.9,27.91,0,31.37,0.94,0.0006,0.0061,0.28,0,1,0,0,1021.48,35.08,31.04,5.15,8,3.83,131.6928711,35.6
Adams,12/6/2014 0:00,40.52,28.88,0.11,34.7,0.89,0.0062,0.0366,0.69,0,1,0,0,1020.85,44.7,34.22,7.6,166,1.97,138.5853119,35.6

二,解决过程

1,csv转json

手动编写转换程序也可以,但是这里推荐一个超级方便的在线转换工具Convert CSV to JSON Array - Table Convert Online

界面简洁而且功能强大,无需翻墙!

调整后的格式如下:

?

2,日期格式调整

可以看出Date字段原始格式为【11/30/2014 0:00】,不方便阅读,这里通过python编写脚本,将格式转换为【2014-11-30 00:00】

直接将时间以json格式保存时会报错,所以这里需要添加一个 DateEncoder

代码比较简单。

import time

import csv
import json
import numpy as np
import pandas as pd
from datetime import datetime

def date_transform():
    filename = 'json/Adams.json'
    target_filename = 'finalJson/Adams1.json'

    class DateEncoder(json.JSONEncoder):
        def default(self, obj):
            if isinstance(obj, datetime):
                return obj.strftime("%Y-%m-%d %H:%M")
            else:
                return json.JSONEncoder.default(self, obj)

    with open(filename, encoding='utf-8') as f1:
        data = json.load(f1)
        for i in range(len(data)):
            data[i]['Date'] = pd.to_datetime(data[i]['Date'], format="%m/%d/%Y %H:%M")
            print(data[i]['Date'])

        with open(target_filename, 'w', encoding='utf-8') as f2:
            json.dump(data, f2, cls=DateEncoder)
            f2.close()

        f1.close()

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-04-18 17:36:48  更:2022-04-18 17:37:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 18:01:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码