美文网首页Pandas
04 pandas DataFrame_创建、文件读取、编码

04 pandas DataFrame_创建、文件读取、编码

作者: 白尔摩斯 | 来源:发表于2018-09-16 16:15 被阅读46次

    === DataFrame 简介 ===

    定义:数据帧 (DataFrame) 是二维数据结构,即数据以行和列的表格方式排列。

    特点:
    1、 潜在的列是不同的类型
    2、 大小可变
    3、 标记轴是行和列 (行、列索引)
    4、 可以对行和列进行算数运算

    === 创建DataFrame ===

    将多个Series合并到一起,形成DataFrame

    1、使用列表创建[]

    Tom_dict = {'语文':90,'数学':88,'英语':78}
    Jerry_dict = {'语文':89,'数学':73,'英语':92}
    Tom = pd.Series(Tom_dict,name='Tom的成绩')
    Jerry = pd.Series(Jerry_dict,name='Jerry的成绩')
    Tom.index.name='科目'
    Jerry.index.name='科目'
    
    # 用DataFrame合并Series
    # pd.DataFrame(data,index)
    # 如果Series表示的是一个人的一行数据,那么生成DataFrame的时候使用[]
    pd.DataFrame([Tom,Jerry])
    

    2、使用字典创建{}

    Chinese = pd.Series([88,78,90],index=['Tom','Jerry','Doge'])
    Maths = pd.Series([80,92,86],index=['Tom','Jerry','Doge'])
    
    # 如果Series表示的是一列数据,那么使用{}
    stu_info = pd.DataFrame({"语文":Chinese,"数学":Maths})
    stu_info.columns.name = '科目'
    stu_info
    
    pd.DataFrame({"M":[1,2,3],"N":[4,5,6]},index=list("abc"))
    

    3、 使用数组创建 column行索引,index列索引

    pd.DataFrame(np.random.randint(0,9,[3,3]),columns=list("abc"),index=list("ABC"))
    

    === 从文件里获取数据 ===

    Excel文件

    excel_countif

    1、sheet_name 表格的小表名

    stu_info = pd.read_excel('student_info1.xlsx',sheetname='countif').head(2)
    stu_info.columns.name='学科'
    stu_info
    

    2、 把哪一列当作行索引 index_col

    stu_info = pd.read_excel('student_info1.xlsx',sheetname='countif',index_col=0).head(2)
    stu_info.columns.name='学科'
    stu_info
    

    3、 set_index("列名") 更改某一列为行索引

    stu_info.set_index='学号'
    stu_info
    

    4、 reset_index(drop=True) 重置行索引,并把行索引转换为数据列
    drop=True 不想要学号,即把行索引数据删除

    stu_info.reset_index(drop=True)
    

    csv文件

    csv文件可以用写字板打开

    1、读取csv文件

    stu_info = pd.read_csv('student_info1.csv')
    stu_info
    

    2、 从第I行开始作为列索引
    header=None或数字
    NONE 说明文件里面没有设置列索引,不把第一行当索引了
    0,1 行当索引。默认是第0行

    stu_info = pd.read_csv('student_info1.csv',header=1)
    stu_info
    

    3、 加列索引

    stu_info = pd.read_csv('student_info1.csv',header=1,names=['语文','数学','英语'])
    stu_info
    

    4、编码 、解析引擎
    encoding 编码 默认utf-8 Windows新建文件,gb2312,gbk
    engine 解析引擎 c比较快 python支撑更多方法

    stu_info = pd.read_csv('student_info1.csv',encoding='utf-8',engine='python')
    

    相关文章

      网友评论

        本文标题:04 pandas DataFrame_创建、文件读取、编码

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