下面是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中增加数据有多种方法,其中比较常用的是使用loc
和iloc
索引器。
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中查询数据主要是使用loc
和iloc
两个索引器,其中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操作数据增删查改的完整攻略了,希望能帮助到你。