为什么以下代码引发异常:
# creates empty data frame with two columns
my_df = pd.DataFrame([], columns=["a", "b"])
# groups by the values in column "a" and transforms the values in "b" to be the sum
my_df.groupby("a")["b"].transform(lambda x: x.sum())
但是,这导致此错误:
ValueError: No objects to concatenate
如果my_df不为空,它将起作用:
list_of_numbers = [[0, 1],
[0, 2],
[1, 10]]
my_df = pd.DataFrame(list_of_numbers, columns=["a", "b"])
my_df.groupby("a")["b"].transform(lambda x: x.sum())
0 3
1 3
2 10
Name: b, dtype: int64
但my_df来自应用程序的其他部分,因此可以为空。我正在使用Pandas 0.20.3。
相关分类