Pandas DataFrame操作数据增删查改

  • Post category:Python

下面是Pandas DataFrame操作数据增删查改的完整攻略:

创建DataFrame

创建一个DataFrame有多种方式,比如从已有的数据、从CSV文件等等。下面我们先来看看从已有的数据创建DataFrame的方法。

import pandas as pd

# 创建一个字典,键是列名,值是列表
data = {'name': ['Tom', 'Jerry', 'Mickey', 'Minnie'],
        'gender': ['male', 'male', 'male', 'female'],
        'age': [20, 21, 19, 18]}

# 使用字典创建DataFrame
df = pd.DataFrame(data)

# 查看DataFrame
print(df)

上面的代码创建了一个包含4行3列的DataFrame,其中第一列是人名,第二列是性别,第三列是年龄。

数据增加

在DataFrame中增加数据有多种方法,其中比较常用的是使用lociloc索引器。

import pandas as pd

# 创建一个空的DataFrame
df = pd.DataFrame(columns=['name', 'gender', 'age'])

# 使用loc增加行数据
df.loc[0] = ['Tom', 'male', 20]
df.loc[1] = ['Jerry', 'male', 21]
df.loc[2] = ['Mickey', 'male', 19]
df.loc[3] = ['Minnie', 'female', 18]

# 查看DataFrame
print(df)

上面的代码依次增加了4行数据到DataFrame中。

数据删除

在DataFrame中删除数据同样有多种方法,其中比较常用的是使用drop()方法。

import pandas as pd

# 创建一个DataFrame
data = {'name': ['Tom', 'Jerry', 'Mickey', 'Minnie'],
        'gender': ['male', 'male', 'male', 'female'],
        'age': [20, 21, 19, 18]}
df = pd.DataFrame(data)

# 删除第一行数据
df = df.drop(0)

# 删除age列
df = df.drop('age', axis=1)

# 查看DataFrame
print(df)

上面的代码分别删除了第一行数据和age列。

数据查询

在DataFrame中查询数据主要是使用lociloc两个索引器,其中loc主要是基于标签对数据进行访问,iloc主要是基于位置进行访问。

import pandas as pd

# 创建一个DataFrame
data = {'name': ['Tom', 'Jerry', 'Mickey', 'Minnie'],
        'gender': ['male', 'male', 'male', 'female'],
        'age': [20, 21, 19, 18]}
df = pd.DataFrame(data)

# 查询第一行数据
print(df.loc[0])

# 查询第一列数据
print(df.loc[:, 'name'])

# 查询年龄大于等于20的数据
print(df[df['age'] >= 20])

上面的代码分别查询了第一行数据、第一列数据和年龄大于等于20的所有数据。

数据修改

在DataFrame中修改数据主要是通过索引器进行赋值操作来实现。

import pandas as pd

# 创建一个DataFrame
data = {'name': ['Tom', 'Jerry', 'Mickey', 'Minnie'],
        'gender': ['male', 'male', 'male', 'female'],
        'age': [20, 21, 19, 18]}
df = pd.DataFrame(data)

# 修改第一行第一列的数据为'John'
df.loc[0, 'name'] = 'John'

# 查看DataFrame
print(df)

上面的代码将第一行第一列的数据修改为’John’后输出了DataFrame。

以上就是Pandas DataFrame操作数据增删查改的完整攻略了,希望能帮助到你。