У меня есть несколько наборов данных, и я написал код, который подсчитывает, сколько раз в них появлялись уникальные объекты.
Первый DF — это один столбец, представляющий собой список всех уникальных объектов, а остальные DF состоят из двух столбцов: объекты, найденные в наборе данных X, и количество объектов:
Объект
Набор данных A
A
1000
B
50
C
1
Поскольку я использовал .values_count(), DF содержат только те объекты, которые были в наборе данных и расположены в порядке убывания. Не очень полезно для анализа.
Вот почему я хотел объединить их с первым DF, списком объектов, чтобы я мог видеть, сколько объектов находится в каждом наборе данных, даже если это число равно 0 (ну, код анализа мог видеть). Это будет выглядеть так:
Объект (список)
Набор данных A
Набор данных B
Набор данных C
A
1000
1000
0
B
50
0
0
C
1
30
2000
D
0*
0
100
*NaN=0
Ось можно менять.
Но я не нашел примеров, которые позволили бы мне это сделать. Я пробовал concat() и merge(), но с concat они просто складываются, а слияние работает только с последним DF. И поскольку я работаю с очень большим количеством DF, вручную помещать их в merge() не получается.
Мой текущий код таков:
Код: Выделить всё
dfs = [object_list]
result = pd.DataFrame()
df = code_that_calculates_the_objects_in_data(not really important for question)
dfs.append(df)
for x in dfs:
result = pd.concat([result, x], axis=0, sort=True)
result.to_csv('file.tsv', sep='\t', na_rep='0')
Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/798 ... -reference
Мобильная версия