Я пытаюсь понять #len aggfunc, когда в списке значений есть Nan. Я думаю, что вертикальное поле столбца 'total' с table2 должно быть 9. Но это 7. Почему это?
Я попробовал "count" вместо len. Этот результат является ожидаемым.
df = pd.DataFrame({"A": ["foo", "foo", "foo", "foo", "foo",
"bar", "bar", "bar", "bar"]
"B": ["one", "one", "one", "two", "two",
"one", "one", "two", "two"],
"C": ["small", np.nan, "large", "small",
"small", "large", np.nan, "small", "large"],
"D": [1, 2, 2, 3, 3, 4, 5, 6, 7],
"E": [2, 4, 5, 5, 6, 6, 8, 9, 9]})
table1 = df.pivot_table(index = "A", columns = "B", values = "C",
aggfunc = "count", margins = True)
table1["total"] = table1["one"] + table1["two"]
table1
table2 = df.pivot_table(index = "A", columns = "B", values = "C",
aggfunc = len, margins = True)
table2["total"] = table2["one"] + table2["two"]
table2
введите описание изображения здесь
введите описание изображения здесь