pandas入门学习记录

一、Series序列

定义:序列是只有一列的数据

1.组成元素:数值和索引 (data 和 index)

2.常用属性

        shape 

        size

        index

        value

3.常用函数

        head()查看开始几个值 (tail()查看结尾几个值)

        unique()返回序列去重后的数据,nunique()返回序列中不同值的个数

  4.最实用操作:[]切片,括号里放索引,返回对应值      

eg.过滤序列空值

import pandas as pd

s1 = pd.Series(data = [1,2,3,4,5],index= ['a','b','c','d','e'])
s2 = pd.Series(data = [1,2,3,4,5],index= ['a','b','c',    'e','f'])
s3 = s1+s2
print(s3) 
print('-------')
print(s3[s3.notnull()])  #过滤s3序列的空值 
print(s3[~s3.isnull()])  #效果同上,~为取反
#直接删掉空值的函数 s3.dropna()
#填充空值 s3.fillna(0),用0填充空值

二、DataFrame

DataFrame是二维数据,表格型数据

1.属性

        行索引 index

        列索引 columns

        值value

2.索引和切片操作

1.索引操作
    取单列:df[col]
    取多列:df[[col1,col2,...]]
    取单行:df.iloc[index]
    取多行:df.iloc[[index1,index2,...]]
    取元素:df.iloc[index,col]
2.切片操作
    取行:df[index1:index2]
    取列:df.iloc[:,col1:col2]
import numpy as np
import pandas as pd
# df = pd.DataFrame(data=np.random.randint(0,100,size=[5,6]))
df = pd.DataFrame(data= [[1,2,3],[4,5,6],[7,8,9],[1,5,9]] , index= ['a','b','c','d'],columns= ['第一列','第二列','第三列'] )
print(df)
print(df.columns) 
print(df.index)
print(df.shape) #(5,6)
print(df.values)

"""
df.columns,df.index 未指定索引时返回 
RangeIndex(start=0, stop=6, step=1)
RangeIndex(start=0, stop=5, step=1)
df.columns,df.index 指定索引名返回
Index(['第一列', '第二列', '第三列'], dtype='object')
Index(['a', 'b', 'c', 'd'], dtype='object')
"""

筛选出含有特定子字符串的行,并筛选出除了特定的几个字符串以外的数据

china_data = df[df['一级部门'].str.contains('中国')] #[]里的返回值是True和False,中括号里返回的是布尔值,df[]返回值为真的行数据
    # 像是序列Series和DataFrame的结合
    other_data = df[~df['一级部门'].str.contains('中国|欧|拉美')] #筛选出除了这三类国家名称以外的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值