pandas 数据分析 相关性_pandas数据分析

pandas

创建文件

DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。

DataFrame既有行索引也有列索引,它可以被看做由series组成的字典(共用同一个索引)

set_index( ) 将 DataFrame 中的列转化为行索引。默认的,当列变成行索引之后,原来的列就没了,但是可以通过设置drop来保留原来的列。

to_excel()函数用于将DataFrame导出到excel文件。

import pandas as pd

df = pd.DataFrame({'ID':[1,2,3],'Name':['Tim','Victor','Nick']})

df = df.set_index('ID')

df.to_excel('E:/pandas/output.xlsx')

print('Done!')

读取文件

read_excel函数用来读取pandas的数据

shape(a,b):查看矩阵或者数组的维数,第一维表示长度为a,第二维表示长度维b。

columns参数用于获取dataframe各列的表头名,也可以用于修改列名。

head函数默认是取出前5行数据,如果想要输出指定数据,可以在函数中指定数据。

tail方法默认显示数据集的后5行,也可以指定数据。

import pandas as pd

people = pd.read_excel('E:/pandas/output.xlsx')

print(people.shape)

print(people.columns)

print(people.head())

print(people.tail())

header:设置表头,当第一行为字符,则第一行数据默认为标题;当第一行与其他数据类型相同时,也会把第一行当作表头,所以无表头时应设置header=None,当有表头时,设置header=0,则第一行数据为表头。若设置header=1,则第二行数据默认为表头。

import pandas as pd

people =

pd.read_excel('E:/pandas/output.xlsx',header=1)

print(people.columns)

inplace参数为True时,不创建新的对象,直接对原始对象进行修改;为False时对数据进行修改,创建并返回新的对象承载其修改结果。

peole.set_index('ID',inplace=True)

index_col用来指定表格的索引值。如果文件格式不正确,可以考虑使用index_col=false强制pandas不适用第一列作为索引。在使用None的时候,会自动将第一列作为索引,并额外添加一列。所以大多我们会使用index_col=0,直接将第一列作为索引,不额外添加列。如果知道某个数据为某一列可以直接指定。

import pandas as pd

df = pd.read_excel('E:/pandas/output.xlsx',index_col='ID')

df.to_excel('E:/pandas/output2.xlsx')

print('Done!')

行,列,单元格

keys()函数用于返回pandas对象的信息轴,返回列表中的键。

values()函数用于返回对应的二维NumPy值数组,返回列表中的值。

index()函数用于查询数据

series是一组带标签数组,即由一组数据和与之相关的标签组成的一维数据对象。与list以及numpy中array相似,但list中元素可以为不同数据类型,而另外两者只能为相同数据类型。series类型包括(index,values)两部分。

import pandas as pd

d = {'x':100,'y':200,'z':300}

print(d.keys())

print(d.values())

print(d['x'])

print(pd.Serise(d))

print(pd.Serise(d).index)

import pandas as pd

s1 = pd.Series([100,200,300],index=['x','y','z'])

print(s1)

import pandas as pd

s1 = pd.Series([1,2,3],index=[1,2,3],name='A')

s2 = pd.Series([10,20,30],index=[1,2,3],name='B')

s3 = pd.Series([100,200,300],index=[1,2,3],name='C')

df = pd.DareFrame({s1.name:s1,s2.name:s2,s3.name:s3})

print(df)

#name是每一列的名称,index每一行的名称。

#要以字典的方式输出,如果以列表方式输出则名称会出现混乱。

数字区域读取,填充数字

skiprows=3跳过前三行。usecols读取指定的列

at可以给某行某列赋值

dtype:设置数组元素类型

datetime.date - 表示日期的类,常用属性:year, month, day

datetime.timedelta - 表示时间间隔,即两个时间点(date,time,datetime)之间的长度

import pandas as pd

books = pd.read_excel('E:/pandas/output.xlsx',skiprows=3,usecols='C:F',index_col=None)

print(books)

import pandas as pd

books=pd.read_excel('E:/pandas/output.xlsx',index_col=None)

books['ID'].at[0]=100

print(books['ID'])

import pandas as pd

from datetime import date,timedelta

books=pd.read_excel('E:/pandas/output.xlsx',skiprows=3,usecols='C:F',index_col=None,dtype={'ID':str,'inStore':str,'Date':str})

start = date(2018,1,1)

for i in books.index:

books['ID'].at[i]=i+1

books['inStore'].at[i]='Yes'if i%2 ==0 else 'No'

#如果i%2==0则输出yes,否则输出no

books['Date'].at[i] = start

print(books)

填充日期序列

timedelta在此处用于添加天数

date在此也用于添加年月日

books['Date'].at[i]=start + timedelta(days=i)

books['Date'].at[i]=date(start.year + i,start.month,start.day)

#at方法找值

books.at[i,'ID'] = i+1

books.at[i,'InStore']='Yes'if i%2 == 0 else 'No'

函数填充,计算列

apply()当一个函数的参数存在于一个元组或者一个字典中时,用来间接的调用这个函数,并肩元组或者字典中的参数按照顺序传递给参数。

import pandas as pd

books = pd.read_excel('E:/pandas/output.xlsx',index_col='ID')

books['price']=books['listprice']*books['discount']

#price这列的值等于listprice这列的值乘于discount这列的值

print(books)

#如果想要计算某一段的值&#x

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值