python数据分析-DataFrame数据框常用基本知识(列、行、切片、计算等code)


Python数据分析博文汇总

更多代码请关注我的【 Python数据分析专栏

数据框是用于存储多行和多列的数据集合

**下列两部分代码基本包含了DataFrame的基本操作,练习即可。 部分Dataframe高级用法直接参考本博文尾部链接 **

    from pandas import DataFrame 
    
    df = DataFrame({
        'age': [21, 22, 23], 
        'name': ['KEN', 'John', 'JIMI']
    })  #导入数据框
    
    df = DataFrame(data={
        'age': [21, 22, 23], 
        'name': ['KEN', 'John', 'JIMI']
    }, index=['first', 'second', 'third']) #自定义index
    
    df['age'] #按列访问
    
    df[1:2] #按行访问
    
    df.iloc[0:1, 0:1] #按行列号访问
    
    df.at[0, 'name'] #按行索引,列名访问
    
    df.columns=['age2', 'name2']  #修改列名
    
    df.index = range(1,4) #修改行索引
    
    newdf1=df.drop(1, axis=0) #根据行索引删除
    
    df.drop('age2', axis=1) #根据列名进行删除
    
    del df['age2']  #第二种删除列的方法
    
    #增加行,注意,这种方法,效率非常低,不应该用于遍历中
    df.loc[len(df)] = [24, "KENKEN"]
    
    df['newColumn'] = [2, 4, 6, 8] #增加列
[/code]

```code
    import numpy as np
    import pandas as pd
    
    data = pd.DataFrame(np.arange(16).reshape(4,4),index = list("ABCD"),columns=list('wxyz'))
    print(data[0:2])                       #取前两行数据
    
    print(len(data))                       #求出一共多少行
    
    print (data.columns.size)              #求出一共多少列
    
    print(data.columns)                    #打印列索引名称
    
    print(data.index)                      #打印行索引名称
       
    print(data.iloc[1])                    #取第2行数据
    
    print(data.loc['A'])                   #取第行索引为”A“行数据,
    
    print(data.loc[:,['x','z'] ])          #表示选取所有的行以及columns为x,z的列
    
    print(data.loc[['A','B'],['x','z']])   #表示选取'A'和'B'这两行以及columns为x,z的列的并集
    
    print (data.iloc[1:3,1:3])              #连续切片操作,取2,3行、2,3列数据
    
    print (data.iloc[[0,2],[1,2]])          #自由选取行位置和列位置对应的数据切片
    
    print(data[data>2])                     #表示选取数据集中大于2的数据
    
    print(data[data.x>5])                   #表示选取数据集中x这一列大于5的所有的行
    
    a1=data.copy()
    print (a1[a1['y'].isin(['6','10'])] )   #表显示满足条件:列y中的值包含'6','8'的所有行
    
    print(data.mean())                    #对每一列的数据求平均值
    
    print(data.mean(1))                   #对每一行求平均值
    
    print (data['x'].value_counts())      #统计某一列x中各个值出现的次数
    
    print(data.describe()) #对每一列数据进行统计,包括计数,均值,std,各个分位数等。
    
    data.to_excel(r'D:\1.xls',sheet_name='Sheet')  #数据(dataframe格式)输出至Excel
[/code]

###  下面三篇原创博文针对更复杂的dataframe数据操作:

  * [ Drop函数与isin函数(DataFrame删除指定行列) ](https://blog.csdn.net/W_weiying/article/details/84626260)
  * [ DataFrame提取(删除)指定行列(isin函数、drop函数)(高级用法详解,示例源码) ](https://blog.csdn.net/W_weiying/article/details/84618685)
  * [ Pandas中loc和iloc函数用法详解(源码+实例) ](https://blog.csdn.net/W_weiying/article/details/81411257)


![在这里插入图片描述](https://img-blog.csdnimg.cn/20210608151750993.gif)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM