pandas axis=1详解

pandas中的axis参数用于指定操作的轴向,在大多数情况下,我们使用axis=0表示行轴,axis=1表示列轴,下面我们来详细了解一下pandas中axis=1的用法。

pandas axis=1详解
(图片来源网络,侵删)

1、读取数据

当我们使用pandas的read_csv、read_excel等函数读取数据时,可以通过设置参数index_col来指定哪一列作为索引,此时默认的行索引为0。

import pandas as pd
data = pd.read_csv('data.csv', index_col=0)

2、选择列

我们可以使用[]操作符来选择DataFrame中的某一列或多列。

column = data['column_name']

3、选择行

我们可以使用ilocat方法来选择DataFrame中的某一行或多行。

row = data.iloc[0]  # 选择第一行,注意索引从0开始
row = data.at[0, 'column_name']  # 选择第一行,通过行索引和列名进行定位

4、修改列名

我们可以使用rename方法来修改DataFrame中的列名。

data = data.rename(columns={'old_name': 'new_name'})

5、删除列

我们可以使用drop方法来删除DataFrame中的某一列或多列。

data = data.drop(['column_name1', 'column_name2'], axis=1)

6、添加新列

我们可以使用assign方法来添加新的列。

data = data.assign(new_column='value')

7、删除行

我们可以使用drop方法来删除DataFrame中的某一行或多行。

data = data.drop([0, 1], axis=0)  # 删除第0行和第1行,注意索引从0开始

8、排序

我们可以使用sort_values方法来对DataFrame中的某一列或多列进行排序。

data = data.sort_values(by='column_name', ascending=False)  # 按'column_name'列降序排序,ascending=True表示升序排序,默认为升序排序

9、合并DataFrame

我们可以使用concatmerge等方法来合并两个或多个DataFrame。

data1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'], 'C': ['C0', 'C1', 'C2', 'C3'], 'D': ['D0', 'D1', 'D2', 'D3']})
data2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'], 'B': ['B4', 'B5', 'B6', 'B7'], 'C': ['C4', 'C5', 'C6', 'C7'], 'D': ['D4', 'D5', 'D6', 'D7']})
result = pd.concat([data1, data2], ignore_index=True)  # 沿行轴(axis=0)合并,ignore_index=True表示重置索引,默认为重置索引,不重置索引时需要设置keys参数,如pd.concat([data1, data2], keys=['data1', 'data2'])
result = pd.merge(data1, data2, on='key')  # 按'key'列进行合并,on参数表示合并依据的列,如果不设置则默认为全表合并,即笛卡尔积运算结果,类似于SQL中的JOIN操作,但比JOIN操作更复杂,支持左连接、右连接、内连接等多种连接方式,具体可参考官方文档:https://pandas.pydata.org/pandasdocs/stable/reference/api/pandas.DataFrame.merge.html#pandasdfmergehow

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/476120.html

(0)
未希新媒体运营
上一篇 2024-04-15 02:34
下一篇 2024-04-15 02:35

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入