【基础】Pandas:数据分析与基本操作
发布时间: 2024-06-26 12:09:13 阅读量: 69 订阅数: 115
![【基础】Pandas:数据分析与基本操作](https://img-blog.csdnimg.cn/20200625221317271.png?)
# 2.1 Series数据结构
Series是一种一维数组结构,用于存储相同数据类型的有序数据。它具有类似于Python列表的功能,但提供了更强大的数据操作和处理能力。
### 2.1.1 Series的创建和基本操作
```python
import pandas as pd
# 创建一个Series
s = pd.Series([1, 2, 3, 4, 5])
# 获取Series的长度
print(s.size) # 输出:5
# 获取Series的元素
print(s[0]) # 输出:1
# 设置Series的元素
s[0] = 6
print(s) # 输出:0 6
# 1 2
# 2 3
# 3 4
# 4 5
# dtype: int64
```
# 2. Pandas数据结构和操作
### 2.1 Series数据结构
#### 2.1.1 Series的创建和基本操作
Series是一种一维数组,用于存储单个数据列。它可以由列表、元组、字典或其他Series创建。
```python
import pandas as pd
# 从列表创建Series
series = pd.Series([1, 2, 3, 4, 5])
# 从字典创建Series
series = pd.Series({'a': 1, 'b': 2, 'c': 3})
# 查看Series
print(series)
```
Series提供了丰富的操作方法,包括:
* **索引和切片:**通过索引或切片访问单个元素或子集。
* **算术运算:**支持基本算术运算(如加、减、乘、除)。
* **比较运算:**支持比较运算(如等于、大于、小于)。
* **逻辑运算:**支持逻辑运算(如与、或、非)。
#### 2.1.2 Series的索引和切片
Series的索引是一个唯一的标识符,用于访问各个元素。索引可以是整数(位置索引)或标签(名称索引)。
```python
# 获取Series的索引
print(series.index)
# 通过索引访问元素
print(series[0])
# 通过切片访问子集
print(series[1:3])
```
### 2.2 DataFrame数据结构
#### 2.2.1 DataFrame的创建和基本操作
DataFrame是一种二维表状数据结构,用于存储多个数据列。它可以由列表、元组、字典或其他DataFrame创建。
```python
# 从列表创建DataFrame
data = [['a', 1], ['b', 2], ['c', 3]]
df = pd.DataFrame(data, columns=['Name', 'Age'])
# 从字典创建DataFrame
data = {'Name': ['a', 'b', 'c'], 'Age': [1, 2, 3]}
df = pd.DataFrame(data)
# 查看DataFrame
print(df)
```
DataFrame提供了丰富的操作方法,包括:
* **索引和切片:**通过索引或切片访问单个行或列。
* **算术运算:**支持基本算术运算(如加、减、乘、除)。
* **比较运算:**支持比较运算(如等于、大于、小于)。
* **逻辑运算:**支持逻辑运算(如与、或、非)。
#### 2.2.2 DataFrame的索引和切片
DataFrame的索引是一个唯一的标识符,用于访问各个行或列。索引可以是整数(位置索引)或标签(名称索引)。
```python
# 获取DataFrame的索引
print(df.index)
# 通过索引访问行
print(df.loc[0])
# 通过切片访问子集
print(df.iloc[1:3])
```
### 2.3 数据操作函数
#### 2.3.1 数据过滤和排序
* **过滤:**使用`query()`或`filter()`函数根据条件过滤数据。
* **排序:**使用`sort_values()`函数根据列值对数据进行排序。
```python
# 过滤数据
filtered_df = df[df['Age'] > 2]
# 排序数据
sorted_df = df.sort_values('Age')
```
#### 2.3.2 数据分组和聚合
* **分组:**使用`groupby()`函数根据列值对数据进行分组。
* **聚合:**使用`agg()`或`apply()`函数对分组数据执行聚合操作(如求和、求平均值)。
```python
# 分组数据
grouped_df = df.groupby('Name')
# 对分组数据求和
summed_df = grouped_df['Age'].sum()
`
```
0
0