美文网首页
128、数据写出及JSON格式转换

128、数据写出及JSON格式转换

作者: 陈容喜 | 来源:发表于2018-01-21 15:17 被阅读0次

    将数据写出到文本格式

    接着上一篇,把数据写出到文本格式,先查看之前读取的一个CSV文件,并用一个字典把各列指定值转为NA值: 1.png 使用DataFrame的to_csv方法,将文件写入到一个ex5-out的文件中: 2.png 从结果中可以看到已成功写入,但是带有行和列的标签,可以设置禁用行和列的标签: 3.png Series也有一个to_csv方法: 4.png
    4-1.png 使用from_csv方法读取刚刚使用Series的to_csv的方法保存的文件: 5.png

    JSON数据

    JSON(JavaScript Object Notation的简称)已成为通过HTTP请求在Web浏览器和其他应用程序之间发送数据的标准格式之一。例如: 6.png JSON数据基本类型有对象(字典)、数组(列表)、字符串、数值、布尔值以及null。对象中所有的键都必须是是字符串,列表的末尾不允许存在多余的逗号。通过json.loads即可将JSON字符串转换成Python形式: 7.png Json.dumps将Python对象转换为JSON格式: 8.png 把JSON对象转换为DataFrame结构,方法是向DataFrame构造器传入一组JSON对象,并选取数据字段的子集: 9.png

    源码:

    # coding: utf-8
    
    # ### 将数据写出到文本格式
    
    # In[1]:
    
    
    import numpy as np
    from pandas import Series,DataFrame
    import pandas as pd
    
    
    # In[2]:
    
    
    # 使用一个字典把各列指定值转为NA值
    new_na = {'message':['foo'],'c':[11],'something':['two']}
    new_na_values = pd.read_csv('D:\\Python\\notebook\\pydata-book-master\\ch06\\ex5.csv',na_values=new_na)
    print(new_na_values)
    
    
    # In[3]:
    
    
    # 使用to_csv方法,将文件写入到另一个文件中
    new_na_values.to_csv('D:\\Python\\notebook\\pydata-book-master\\ch06\\ex5-out.csv')
    
    pd.read_csv('D:\\Python\\notebook\\pydata-book-master\\ch06\\ex5-out.csv')
    
    
    # In[4]:
    
    
    import sys
    # 禁用行和列的标签
    new_na_values.to_csv(sys.stdout,index=False,header=False)
    print(new_na_values)
    
    
    # In[5]:
    
    
    # Series也有一个to_csv方法:
    # 先创建一个Series文件
    dates =pd.date_range('1/1/2018',periods=7)
    ts = Series(np.arange(7),index=dates)
    print(ts)
    
    
    # In[6]:
    
    
    # 写入文件
    ts.to_csv('D:\\Python\\notebook\\pydata-book-master\\ch06\\test_series.csv')
    
    
    # In[7]:
    
    
    # 使用from_csv方法读取csv文件
    Series.from_csv('D:\\Python\\notebook\\pydata-book-master\\ch06\\test_series.csv',parse_dates=True)
    
    
    # ### JSON数据
    
    # In[8]:
    
    
    obj = """
    {"name":"Wes",
     "places_lived":["United States","Spain","Germany"],
     "pet":null,
     "siblings":[{"name":"Scott","age":25,"pet":"Zuko"},
                 {"name":"Katie","age":33,"pet":"Cisco"}]
     }
    """
    
    
    # In[9]:
    
    
    # 通过json.loads将JSON字符串转换为python格式
    import json
    result = json.loads(obj)
    result
    
    
    # In[10]:
    
    
    # json.dumps将python对象转换为JSON格式
    asjson = json.dumps(result)
    print(asjson)
    
    
    # In[11]:
    
    
    # JSON对象转换为DataFrame结构
    siblings = DataFrame(result['siblings'],columns=['name','age'])
    print(siblings)
    

    相关文章

      网友评论

          本文标题:128、数据写出及JSON格式转换

          本文链接:https://www.haomeiwen.com/subject/ikzfaxtx.html