翻转Pandas数据帧的行?
本文介绍如何翻转Pandas数据帧的行。Pandas是一种开源的Python库,提供高性能的数据操作和分析工具,使用强大的数据结构。数据帧是一种二维数据结构,即数据以行和列的表格方式对齐。
使用索引翻转Pandas数据帧的行
示例
在本示例中,我们将使用 [::-1] 翻转数据帧的行 −
import pandas as pd
# 创建字典
dct = {'Rank':[1,2,3,4,5], 'Points':[100,87, 80,70, 50]}
# 使用pandas.dataframe()从字典元素创建数据帧
df = pd.DataFrame(dct)
print("数据帧 = \n",df)
# 使用索引翻转数据帧
print("\n翻转数据帧 = \n",df[::-1])
输出
数据帧 =
Rank Points
0 1 100
1 2 87
2 3 80
3 4 70
4 5 50
翻转数据帧 =
Rank Points
4 5 50
3 4 70
2 3 80
1 2 87
0 1 100
使用reindex()翻转Pandas数据帧的行
示例
在本示例中,我们将使用reindex()翻转数据帧的行 −
import pandas as pd
# 创建字典
dct = {'Rank':[1,2,3,4,5], 'Points':[100,87, 80,70, 50]}
# 使用pandas.dataframe()从字典元素创建数据帧
df = pd.DataFrame(dct)
print("数据帧 = \n",df)
# 使用reindex()翻转数据帧
print("\n翻转数据帧 = \n",df.reindex(index=df.index[::-1]))
输出
数据帧 =
Rank Points
0 1 100
1 2 87
2 3 80
3 4 70
4 5 50
翻转数据帧 =
Rank Points
4 5 50
3 4 70
2 3 80
1 2 87
0 1 100
使用iloc翻转Pandas数据帧的行
示例
在本示例中,我们将使用iloc翻转数据帧的行
import pandas as pd
# 创建字典
dct = {'Rank':[1,2,3,4,5], 'Points':[100,87, 80,70, 50]}
# 用pandas.dataframe()从字典元素中创建数据帧
df = pd.DataFrame(dct)
print("数据帧 = \n",df)
# 使用iloc翻转数据帧
print("\n翻转后的数据帧 = \n",df.iloc[::-1])
输出
数据帧 =
Rank Points
0 1 100
1 2 87
2 3 80
3 4 70
4 5 50
翻转后的数据帧 =
Rank Points
4 5 50
3 4 70
2 3 80
1 2 87
0 1 100
使用sort_index()翻转Pandas数据帧的行
示例
在本示例中,我们将使用sort_index()方法翻转数据帧的行。在参数中,我们可以设置顺序,即升序False或True −
import pandas as pd
# 创建字典
dct = {'Rank':[1,2,3,4,5], 'Points':[100,87, 80,70, 50]}
# 用pandas.dataframe()从字典元素中创建数据帧
df = pd.DataFrame(dct)
print("数据帧 = \n",df)
# 使用sort_index()翻转数据帧
print("\n翻转后的数据帧 = \n",df.sort_index(ascending=False))
输出
数据帧 =
Rank Points
0 1 100
1 2 87
2 3 80
3 4 70
4 5 50
翻转后的数据帧 =
Rank Points
4 5 50
3 4 70
2 3 80
1 2 87
0 1 100
使用reset_index()翻转Pandas数据帧的行
示例
在这里,我们将看到另一种翻转数据帧行的方法。这也会在翻转数据帧后重置索引。让我们看看例子 −
import pandas as pd
# 创建一个字典
dct = {'Rank':[1,2,3,4,5], 'Points':[100,87, 80,70, 50]}
# 使用 pandas.dataframe() 从字典元素创建一个数据帧
df = pd.DataFrame(dct)
print("DataFrame = \n",df)
# 通过 reset_index() 反转数据帧
print("\n反转数据帧 = \n",df[::-1].reset_index())
输出
DataFrame =
Rank Points
0 1 100
1 2 87
2 3 80
3 4 70
4 5 50
反转数据帧 =
index Rank Points
0 4 5 50
1 3 4 70
2 2 3 80
3 1 2 87
4 0 1 100