python进阶--pandas基本功能

Posted 文仙草

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python进阶--pandas基本功能相关的知识,希望对你有一定的参考价值。

一、调用pandas

  • import pandas:导入pandas包,后续代码就可以使用pandas包里定义好的功能了。
  • import pandas as pd:
    相当于将pandas包重命名为pd,这样之后使用pandas包的功能的时候,直接写pd,而不需要写pandas,更省事。

二、打开和保存文件

  • pd.read_csv(filepath)
import pandas as pd

filepath = 'E:\\\\python\\\\test.csv'
df = pd.read_csv(filepath)
  • pd.read_xlsx(filepath)
import pandas as pd

filepath = 'E:\\\\python\\\\test.xlsx'
df = pd.read_xlsx(filepath)
  • df.to_csv(filepath&name)
    将文件保存为csv格式,注意不要忘记写后缀
df.to_csv('new_file.csv')
df.to_csv('E:\\\\python\\\\new_file.csv')

三、初查数据

  • df.head(): 展示前五行数据
  • df[‘name’].unique(): 剔除该列数据的重复项。

四、创建DataFrame

  • 将字典变成DataFrame结构:key是列名,value是每列数值 python student = {'name': ['Eva', 'Bob', 'John','Cathy', 'Kate'], 'age': ['15', '16', '15','17','16'], 'gender': ['f', 'm', 'f', 'f', 'm']} student_df = pd.DataFrame(student)

五、常用方法

(一)从DataFrame结构的数据中选取一列数据

  1. 直接选取,Series格式:df[‘列名’] (注意:是一个方括号)

    1. 按dataframe格式:df[[‘列名’]] (注意:是两个方括号)

(二)从DataFrame结构的数据中选取多列数据

格式:df[[‘列名1’,‘列名2’,‘列名3’]] ,注意是两个方括号

如果只有一个方括号会报错

(三)获取第n行、第m列单元格的数值

  1. 用数字定位:df.iloc[n,m]
    注意:标题列不算行数,行数据和列数据的序号n、m均从0开始,所以获取第一行、第一列单元格数据时,应该是df.iloc[0,0]

2)用列名定位获取数据
获取第二行中’Artist‘列的数据(注意,此处的第二行是指实际数据的第二行,而其行序号为1),如图

(四)获取多行多列数据(数据切片)

  1. 用序号:df.iloc[i:j, n:m]
    例如获取第1到2行、1到3列的数据,如下图:

    上图获取的数据在整个数据表中的位置如下图:

  1. 用列名: df.loc[i:j, ‘列名’:‘列名’]

.loc与.iloc对行数据切片的不同之处,需特别注意!! df.loc[i:j]是获取行序号从第i行到第j行;而在使用df.iloc[i:j]时获取第i行到第j-1行数据。

如下图,df.loc[0:2, :]获取了前三行数据,而上面df.iloc[0:2,:]获取了前两行数据。

(三)选择列数据满足特定要求的行数据

df1 = df[df[‘gender’] = ‘f’]: 满足条件的返回True, 反之返回False; 为True的行被选中,为False的行被剔除。 df2 = df[df[‘age’]>16]

以上是关于python进阶--pandas基本功能的主要内容,如果未能解决你的问题,请参考以下文章

python进阶--pandas基本功能

python进阶--pandas基本功能

进阶第十六课 Python模块之Pandas

python进阶之---pandas

python数据分析之Pandas:基本功能介绍

python pandas multiindex片段