(超详细)新手入门Pandas数据处理「part I」:创建Series和Pandas对象

一、什么是Pandas

        Pandas是主要用来数据分析、数据操作、数据清洗的基于NumPy(Numerical Python:同样是python库之一,用来存储和处理大型矩阵,主要用于数组计算)的开源python库,是一个强大的分析结构化数据工具集,通常通过新建两种对象来使用pandas:Series 和 DataFrame

1.Series

        Series是一种类似于一维数组的对象,是Pandas中最基本的数据结构对象,是DataFrame的列对象或行对象,简单来说DataFrame就是一个有行索引和列索引、内容不仅限数字的行列式,Series对象就是其中的一行或一列(包含行/列索引)。

        Series由下面两个部分组成:

          * values:一组数据(字面意义就是值,类型是整型、浮点数、字符串都可以)。

          * index :行/列索引,如果没有自定义的索引,系统就会自动创建一个0 ~ N的整数型索引。 

以下是创建Series对象需要学习到的代码(Series中即使是一行数据也会竖起来以列的形式展示):       

​
import numpy as np
import pandas as pd

'''创建一个Series对象'''
# 方式一:先创建一个ndarray对象,将ndarray对象中的内容赋值给Series对象
arr = np.array([1, 4, 6])
s1 = pd.Series(data=arr)
print(s1)
# 若想验证Series对象的类型可以使用type()函数
print(type(s1))

# 方式二:直接将arr传入Series对象,省去‘data=’
s2 = pd.Series(arr)
print(s1)  # 得到的结果和方式一一致

# 方式三:直接传入数据,不使用ndarray对象当作赋值媒介
s3 = pd.Series([1, 2, 3])
print(s3)

# 方式四:传入字典、元组, 以上三种方式都可以使用,这里仅展示一种方式
# 传入字典
s_dict = pd.Series({'Cat' : 'Tom', 'Dog': 'Snoopy', 'Fish' : 'Nemo'})
print(s_dict)

# 传入元组
s_tuple = pd.Series((1, 8, 8, 6))
print(s_tuple)


'''自定义Series对象的索引'''
'''
以上生成的Series对象中的索引都是系统自动生成的整数型索引
如果不想要系统自动生成的索引可以选择自定以索引,
使用Series对象的index即可自定义索引
'''
#方式一:传入ndarray对象
s11 = pd.Series(arr, index=['索引一', '索引二', '索引三'])
print(s11)
# 方式二:直接传入列表
s12 = pd.Series([1, 2, 3], index=['索引一', '索引二', '索引三'])
print(s12)
# 方式三:直接传入元组
s13 = pd.Series((1, 2, 4), index=['索引一', '索引二', '索引三'])
print(s13)
# 注:字典已经包含了索引故不能用以上三种方式传入数据

​

2.DataFrame

          DataFrame直接翻译就是数据框,含有一组或多组的Series对象,直白说DataFrame就是一个由Series对象一条一条填入的框架。DataFrame每列可以是不同的值类型,是一个有行列索引的二位数据表,Series中的许多方法在DataFrame中也同样适用。

以下是创建DataFrame对象的相关代码:

'''创建一个DataFrame对象:传入字典的方式'''
# 以下DataFrame类型对象简称df对象
# df对象的创建需要通过传入字典的方式
df1 = pd.DataFrame({
    'id' : [100, 200, 300],
    'name':['Toothless', 'Dragon', 'Patrick']
})

print(df1)

# 同样的df对象也能自定义索引
df2 = pd.DataFrame({
    'id' : [100, 200, 300],
    'name':['Toothless', 'Dragon', 'Patrick']
}, index=['*', '*', '*'])
print(df2)

# 若像改变df对象中列的顺序,可以通过类中的columns属性进行更改
# !!!注意一般建议写字典的时候就把顺序写好
df3 = pd.DataFrame({
    'id' : [100, 200, 300],
    'name':['Toothless', 'Dragon', 'Patrick']
}, index=['*', '*', '*'], columns=['name', 'id'])
print(df3)

'''创建DataFrame对象:传入列表+元组'''
# 此处的‘index=’可写可不写,看用户的需求,columns属性也一样
df4=pd.DataFrame([
    (111, 'aaa', 12.3),
    (222, 'bbb', 23.4)
], index=['索引一', '索引二'])
print(df4)

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值