如何从 pandas 中的两列创建元组


您可以使用以下基本语法从 pandas DataFrame 中的两列创建元组:

 df[' new_column '] = list(zip(df. column1 , df. column2 ))

这个特定的公式创建一个名为new_column的新列,它是由 DataFrame 中的column1column2形成的元组。

以下示例展示了如何在实践中使用此语法。

示例:从 Pandas 中的两列创建一个元组

假设我们有以下 pandas DataFrame,其中包含有关各种篮球运动员的信息:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4]})

#view DataFrame
print (df)

  team points assists
0 to 18 5
1 B 22 7
2 C 19 7
3 D 14 9
4 E 14 12
5 F 11 9
6 G 20 9
7:28 a.m. 4

我们可以使用以下语法创建一个名为assist_points的新列,它是由pointsassists列的值组成的元组:

 #create new column that is a tuple of points and assists columns
df[' points_assists '] = list(zip(df. points , df. assists ))

#view updated DataFrame
print (df)

  team points assists points_assists
0 to 18 5 (18.5)
1 B 22 7 (22, 7)
2 C 19 7 (19, 7)
3 D 14 9 (14, 9)
4 E 14 12 (14, 12)
5 F 11 9 (11, 9)
6 G 20 9 (20, 9)
7:28 4 (28.4)

名为assist_points 的新列是由pointsassists列组成的元组。

请注意,如果您愿意,您还可以在元组中包含两列以上。

例如,以下代码显示了如何创建一个使用 DataFrame 原始三列中的值的元组:

 #create new column that is a tuple of team, points and assists columns
df[' all_columns '] = list(zip(df. team , df. points , df. assists ))

#view updated DataFrame
print (df)

  team points assists all_columns
0 A 18 5 (A, 18, 5)
1 B 22 7 (B, 22, 7)
2 C 19 7 (C, 19, 7)
3 D 14 9 (D, 14, 9)
4 E 14 12 (E, 14, 12)
5 F 11 9 (F, 11, 9)
6 G 20 9 (G, 20, 9)
7 A.M. 28 4 (H.28.4)

您可以使用相同的基本语法来创建包含任意数量列的元组列。

其他资源

以下教程解释了如何在 pandas 中执行其他常见操作:

如何删除 Pandas 中的重复行
如何删除 Pandas 中的重复列
如何计算 pandas 中的重复项

添加评论

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