python-如何为数据帧分配特殊索引?
我有以下数据帧:python-如何为数据帧分配特殊索引?,python,dataframe,Python,Dataframe,我有以下数据帧: Col1 Col2 Col3 X Apple A Y Orange B Y Apple B X Apple B X Orange B 我想创建一个4位数的数字来创建索引 逻辑是,当Col1和Col2匹配时,4位数字将与前面相同。 索引是通过组合Number和Col3创建的 Expected output Number Col1 Col2
Col1 Col2 Col3
X Apple A
Y Orange B
Y Apple B
X Apple B
X Orange B
我想创建一个4位数的数字来创建索引
逻辑是,当Col1和Col2匹配时,4位数字将与前面相同。
索引是通过组合Number和Col3创建的
Expected output
Number Col1 Col2 Col3 Index
0001 X Apple A 0001-A
0002 Y Orange B 0002-B
0003 Y Apple B 0003-B
0001 X Apple B 0001-B
0004 X Orange B 0004-B
如何实现这一点?首先使用第1列和第2列的连接为索引的数字部分创建一个字典,然后您就拥有了所有行的索引的数字部分,因此只需将索引与第3列连接起来即可 函数获取索引号:
def get_index_编号(行、索引目录):
唯一名称=行['col1']+“-”+行['col2']
如果唯一名称不在索引目录中:
索引目录[唯一名称]=行['number']
返回索引目录[唯一名称]
用法:
假设您在dataframe中已经有列“index”(如果没有添加它)
index_dict={}
对于dataframe.ItErrors()中的行:
行['index']=获取索引编号(行,索引编号)
首先使用列1和列2的串联,为索引的数字部分创建一个字典,然后您就拥有了所有行的索引的数字部分,因此只需将索引与列3串联起来即可
函数获取索引号:
def get_index_编号(行、索引目录):
唯一名称=行['col1']+“-”+行['col2']
如果唯一名称不在索引目录中:
索引目录[唯一名称]=行['number']
返回索引目录[唯一名称]
用法:
假设您在dataframe中已经有列“index”(如果没有添加它)
index_dict={}
对于dataframe.ItErrors()中的行:
行['index']=获取索引编号(行,索引编号)
您可以将自己的尝试添加到代码中吗?这样就更容易知道您使用的数据类型和模块。您可以添加自己的代码吗?这样就更容易知道您使用的是什么数据类型以及哪些模块。