美文网首页
pandas基本操作——1

pandas基本操作——1

作者: 荔枝葡萄干 | 来源:发表于2019-03-17 16:20 被阅读0次

这里来介绍一下pandas。由于知识点比较多,决定分几篇介绍。

import numpy as np
import pandas as pd 
#pandas是基于numpy的一个开源python库。
#我认为相当于python版excel


#series是一种一维数组,是基于ndarray设计的,但是他多了一个功能就是自定义标签。
#说的明白点就是索引。因此可以通过这个索引来访问数组中的数据
#创建语法如下:
#my_series=pd.Series(data,index)
countries=['USA','France','China','England']
my_data=[100,200,300,400]
my_series=pd.Series(my_data,countries)
my_series

USA        100
France     200
China      300
England    400
dtype: int64

#注意,index是可以省略的,这时系统会自动已默认index进行索引,这时的series就类似数组了。
pd.Series(my_data)

0    100
1    200
2    300
3    400
dtype: int64

#从numpy数组对象来创建Series:
np_arr=np.array(my_data)
pd.Series(np_arr)

0    100
1    200
2    300
3    400
dtype: int64

#从字典来创建Series似乎更方便
#pandas会自动把字典的键值设置成Series的index,并将对应的values放在和索引对应的data里
#这也证明了,pandas的Series可以存放各种不同类型的对象。
my_dict={'a':50,'b':60,'c':70,'d':80}
pd.Series(my_dict)

a    50
b    60
c    70
d    80
dtype: int64

#从Series中获取数据,和字典操作基本一样。
my_dict['b']
60
#对Series进行算术运算操作
#基于index进行,可以用加减乘除这样的运算符对两个Series进行运算。
#结果均以浮点数的形式存储,以免丢失精度。
series1=pd.Series([1,2,3,4],['shandong','wuhan','changsha','hangzhou'])
series2=pd.Series([4,7,9,2],['beijing','tianjin','shijiazhuang','hangzhou'])
#如果pandas在两个Series里找不到相同的index,对应位置就返回空值NaN。
series1-series2

beijing         NaN
changsha        NaN
hangzhou        2.0
shandong        NaN
shijiazhuang    NaN
tianjin         NaN
wuhan           NaN
dtype: float64

series1+series2
beijing         NaN
changsha        NaN
hangzhou        6.0
shandong        NaN
shijiazhuang    NaN
tianjin         NaN
wuhan           NaN
dtype: float64

#DataFrames
#Pandas的DataFrame是一种2维数据结构,数据以表格的形式存储,分为若干行和列。
#下面用多个Series来构建一个DataFrame。道理很简单,多个一维数组组合起来就变成了二维数组
df={'Name':pd.Series(['齐','楚','秦','燕','赵','魏','韩'],index=['东','南','西','东北','北','中北','中']),
       'Age':pd.Series(['32','42','32','45','14','22','34'],index=['东','南','西','东北','北','中北','中']),
       'size':pd.Series(['2332','4212','3242','4455','1324','2232','3784'],['东','南','西','东北','北','中北','中'])
   }
pd.DataFrame(df)


Name    Age size
东   齐   32  2332
南   楚   42  4212
西   秦   32  3242
东北  燕   45  4455
北   赵   14  1324
中北  魏   22  2232
中   韩   34  3784

#用一个字典来创建DataFrame
data={'name':['dwd','dwds','fgerd'],
      'age':[32,43,1231],
      'year':[2012,2123,2312]
}
my_df=pd.DataFrame(data,index=['first','second','last'])
my_df


                name      age   year
first           dwd           32        2012
second  dwds       43   2123
last            fgerd   1231    2312

my_df[['age','year']]

age year
first   32  2012
second  43  2123
last    1231    2312


#给DataFrame增加数据列
#1.可以从头开始定义一个pd.Series,放到表中.
#2.可以用现有的列来产生需要的新列。
#1
my_df['size']=pd.Series([323,123,435],['first','second','last'])
my_df

name    age year    size
first   dwd 32  2012    323
second  dwds    43  2123    123
last    fgerd   1231    2312    435

#2从其他列中创造新列
my_df['pip']=my_df['age']+my_df['size']
my_df=pd.DataFrame(my_df)
my_df


name    age year    size    pip
first   dwd 32  2012    323 355
second  dwds    43  2123    123 166
last    fgerd   1231    2312    435 1666


#从DataFrame删除行/列。用drop()函数。
#使用时需要指定具体的删除方向,axis=0对应的是行row,axis=1对应的是列column。
my_df.drop('pip',axis=1)

name    age year    size
first   dwd 32  2012    323
second  dwds    43  2123    123
last    fgerd   1231    2312    435

my_df.drop('first',axis=0)

name    age year    size    pip
second  dwds    43  2123    123 166
last    fgerd   1231    2312    435 1666

未完待续

相关文章

  • pandas基本操作——1

    这里来介绍一下pandas。由于知识点比较多,决定分几篇介绍。

  • 2019.3.19-2019.3.22

    1.Pandas基本操作 Pandas库内将数据转换为一种DataFrame类型进行处理 1).读取数据 2).提...

  • Pandas基本操作

    数据框的创建 参数说明data数据, 用字典表示, 默认为空index索引, 方便快速找到某个数据, 可以用列表/...

  • Pandas 基本操作

    文件读取 预览、定位选择 排序 修改列名 不采用科学计数 行转列 运算 读取文本初始化 DataFrame 并进行...

  • pandas使用方法及相关函数记录1

    pandas使用方法记录总结 基本操作记录 查看pandas版本 查看pandas及相关库版本 创建DataFra...

  • 2021-12-20Pandas:Datafram

    pandas——Datafram 基本操作方法 https://www.jianshu.com/p/c4266e1...

  • pandas 基本操作记录

    读写 创建DataFramedf = pd.DataFrame(dict,index=[ ]) #从字典df = ...

  • nympy/pandas基本操作

    NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函...

  • pandas 基本操作1.0

    pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的 #对数组处理#兼容各种数据库#支持...

  • pandas 基本操作2.0

    Dataframe:基本概念及创建 Dataframe 数据结构 Dataframe是一个表格型的数据结构,“带有...

网友评论

      本文标题:pandas基本操作——1

      本文链接:https://www.haomeiwen.com/subject/gguumqtx.html