Привет, сообщество переполнения стека!
Используя Python, я хотел бы создать функцию, которая принимает строку, а затем возвращает новый столбец, содержащий список со значениями из каждого столбца в этой строке. Вот мой пример -
+--------+--------+-------+
| first | second | third |
+--------+--------+-------+
| monkey | banana | time |
| banana | monkey | time |
| time | monkey | time |
+--------+--------+-------+
Я бы хотел вернуть:
+--------+--------+-------+----------------------------+
| first | second | third | list |
+--------+--------+-------+----------------------------+
| monkey | banana | time | ['monkey','banana','time'] |
| banana | monkey | time | ['banana','monkey','time'] |
| time | monkey | time | ['time','monkey','time'] |
+--------+--------+-------+----------------------------+
Я пробовал эту функцию (для фрейма данных с 14 столбцами), но она сработала. не работает:
def return_list_for_importance_rank(row):
row_list = []
my_list = [row.first, row.second, row.third, row.fourth, row.fifth, row.sixth, row.seventh, row.eighth, row.ninth, row.tenth, row.eleventh, row.twelfth, row.thirteenth, row.fourteenth]
row_list.append(my_list)
return row_list
importance_rank["full"] = df.apply(lambda x: return_list_for_importance_rank(x),axis=1)
Что вернуло это:
<bound method NDFrame.first of first None\nsecond None\nthird None\nfourth None\nfifth None\nsixth None\nseventh None\neighth None\nninth None\ntenth None\neleventh None\ntwelfth None\nthirteenth None\nfourteenth None\nfull None\n
В столбце «Полный» каждой строки.