Python 熊猫基于不同的列创建新列

Python 熊猫基于不同的列创建新列,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框,其中有三列: 模块 FW_版本 Óv_名称 其中,模块列有三个不同的值,每个值都有其FW_版本和ÒV_名称` 我期待着为这三个不同的值创建一个新列,并在下面打印FW_版本,但应与ÒV_name`对齐,如预期输出所示 数据帧: 唯一值: 下面是列的三个唯一值 'Synergy 20Gb Interconnect Link Module' 'Virtual Connect SE 40Gb F8 Module for Synergy' 'Synergy 12Gb SAS Con

我有一个数据框,其中有三列:

  • 模块
  • FW_版本
  • Óv_名称
其中,
模块
列有三个不同的值,每个值都有其
FW_版本
和ÒV_名称`

我期待着为这三个不同的值创建一个新列,并在下面打印
FW_版本
,但应与ÒV_name`对齐,如预期输出所示

数据帧: 唯一值: 下面是列的三个唯一值

'Synergy 20Gb Interconnect Link Module'
 'Virtual Connect SE 40Gb F8 Module for Synergy'
 'Synergy 12Gb SAS Connection Module'
预期: 用于:

另一个想法是,如果每个
Óv_名称重复,则模块
FW_版本
中具有相同的值,则可以使用:

df2 = df.pivot_table(index='Óv_Name',
                     columns='Modules',
                     values='FW_Version', aggfunc='first')

正如我看到它返回的多索引一样,我们是否可以只打印所需的列,如
“v_Name”“Synergy 12Gb SAS连接模块”“Synergy 20Gb互连链接模块”“Synergy虚拟连接SE 40Gb F8模块”
@kulfi-Add
df2.reset_index().重命名_轴(无,轴=1)
Óv_Name    Synergy 20Gb Interconnect Link Module   Virtual Connect SE 40Gb F8 Module for Synergy   Synergy 20Gb Interconnect Link Module                                   
ov1001     1.17                                    1.4.2.1005                                      1.17
df1 = (df.drop_duplicates(subset=['Modules', 'Óv_Name'])
         .pivot('Óv_Name', 'Modules', 'FW_Version'))
df2 = df.pivot_table(index='Óv_Name',
                     columns='Modules',
                     values='FW_Version', aggfunc='first')