我有一个看起来像这样的df:
id.1.value.1 id.2.value.2 id.1.question id.2.value.2
TRUE FALSE TRUE TRUE
我想创建扫描df的列名并仅从列名中的列名中提取最后一个数字的逻辑,并将包含以下逻辑value
的列的单元格中的值进行比较:value
如果列中的值
value
相等TRUE
,则比较多值字典中的最后一个数字使用多键字典中的第二个值来创建数据框列名
例子:
my_dict = {1: ('a', 'category'),2: ('b', 'category'),\
3: ('c', 'category'),4:('d','category'),\
5:('e','subcategory'),6:('f','subcategory'),\
7:('g','subcategory'),8:('h','subcategory'),\
9:('i','subcategory'),10:('j','subcategory'),\
11:('k','subcategor'),12:('l','subcategory'),\
13:('m','subcategory'),14:('n','subcategory'),\
15:('o','subcategory'),16:('p','subcategory'),\
17:('q','subcategory'),18:('r','subcategory'),\
19:('s','subcategory'),20:('t','subcategory'),\
21:('u','subcategory'),22:('v','subcategory'),\
23:('w','subcategory'),24:('x','subcategory')
}
如果我当前的 df 看起来像这样:
id.1.value.1 id.2.value.2 id.1.question id.6.value.6
TRUE FALSE TRUE TRUE
新的 df 应该是这样的:
category subcategory
a f