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

 

Python数据分析博文汇总

  • Pandas重复值处理函数drop_duplicates()
  • Pandas数据库缺失值处理函数dropna
  • Pandas中slice函数字段抽取
  • python数据分析-DataFrame数据框基本知识
  • Pandas数据库数据抽取
  • Numpy.random.randint()函数用法及源码
  • Pandas.concat()函数用法及源码
  • Pandas数据框列合并详解
  • Pandas.merge()函数用法及源码
  • Pandas之数据框框运算
  • Pandas之数据标准化
  • Pandas.cut函数用法及源码
  • python数据框空格值处理
  • Pandas.split()函数用法及源码
  • Dataframe指定列转化为矩阵matrix、数组list
  • Python读取XML中数据提取为Dataframe
  • Python提取TXT数据转化为DataFrame
  • Dataframe指定列转化为矩阵matrix、数组list

更多代码请关注我的【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] #增加列
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

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

  • Drop函数与isin函数(DataFrame删除指定行列)
  • DataFrame提取(删除)指定行列(isin函数、drop函数)(高级用法详解,示例源码)
  • Pandas中loc和iloc函数用法详解(源码+实例)

你可能感兴趣的:(Python数据分析,PYTHON之数据分析)