Pandas中五个常见操作小结

1. 引言

Pandas是专门为csv、excel等表格数据创建的数据分析、可视化和操作的第三方库。其中DataFrame是一种二维数据结构,它一般是由行和列组成的表格数据。在Python3中使用Pandas库,可以方便我们对表格数据执行相应的数据操作。

闲话少说,我们直接开始吧!

2. 创建空的DataFrame

Q1: 在Pandas中如何创建空的DataFrame ?

代码如下:

df = pd.DataFrame(index=[0,1,2,3,4],columns = ['col1','col2'])
df.head() # Prints top 5 rows in the dataframe

输出如下:

 col1 col2
0 NaN NaN
1 NaN NaN
2 NaN NaN
3 NaN NaN
4 NaN NaN

上述代码中,函数pd.DataFrame()创建了一个空的dataframe,包含两列,名字分别为col1以及col2

3. 从元组或字典中构建DataFrame

我们可以从元组列表中构建DataFrame,并为其赋初试值。样例代码如下:

data = [(1,2),(3,4),(5,6)]
df = pd.DataFrame.from_records(data,columns=['col1','col2'])
df.head()

输出如下:
在这里插入图片描述
当然,我们也可以从字典中来构建相应的DataFrame,样例代码如下:

data = {'col1':[1,3,5],'col2':[2,4,6]}
df = pd.DataFrame.from_dict(data)
df.head()

输出如下:

  col1 col2
0  1    2
1  3    4
2  5    6

对上述字典中,键是列名,所有列表值的长度都应该相同。

4. DataFrame添加新行或新列

如果我们想要对已经存在的DataFrame中添加新的列,我们可以简单的这么操作,代码如下:

df['col3'] = [1,2,3] # ADDING COLUMN NAMES COL3

同样如果我们想要增加新的行,代码如下:

df.loc[df.shape[0],] = [7,8,9] # ADDING ROW AT LAST OF THE DATAFRAME

上述代码的运行结果如下:

在这里插入图片描述
上述代码中,df['col3'] df中添加了新的一列,添加值的数目等于现存的列中的元素数目。
df.loc[rows,columns]是一个基本的单元格选择操作。例如:在上述例子中,df总共有3行。要添加新行,我们调用df.shape[0]的值为3。此时上述代码等价于df.loc[3] = [7,8,9]。需要注意的是,我们需要传递与df中所有列数相同大小的数组。

5. DataFrame中删除行或列

Pandas中我们主要使用函数drop来删除行或列,样例代码如下:

df.drop(index = [1,2], columns = ['col3'],inplace = True)
df.head()

输出如下:
在这里插入图片描述
上述代码中,函数df.drop()通过index参数来选择需要删除的行,同时通过columns参数来选择需要删除的列。

6. 修改DataFrame指定单元格的值

Pandas中主要利用函数df.loc()来修改指定单元格的数值,样例代码如下:

Example1: Change index=3 and column='col3' value = 80
df.loc[3,'col2'] = 80
Example2: Change the values in col1 which are divisible by 5 to -1
df.loc[df.col1%5 == 0,'col1'] = -1
df.head()

运行结果如下:
在这里插入图片描述
上述代码中,我们通过传递index=3以及column='col2'来将对应单元格中的数字修改为80;同时我们利用条件df.col1%5 == 0,满足该条件后的形式为df.loc[2,'col1'] = -1,进而可以改变对应单元格的数值。

7. 总结

本文重点介绍了Pandas中常用的五个简单操作,可以方便我们对二维表格数据进行简单的处理,并给出了相应的运行代码。

您学废了吗?

在这里插入图片描述
关注公众号《AI算法之道》,获取更多AI算法资讯。

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵卓不凡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值