我试图找到特定季节销售更多的产品,但是却遇到了困难。 我创建了“季节”属性,并找到了每种产品的销售季节,并以“季节1(冬季)”为例,我将在所有其他季节进行相同的操作,然后我必须在地块中显示哪些产品主要在每个季节出售。
这是数据的子集(股票代码,描述,月份,季节):
22460,EMBOSSED GLASS TEALIGHT HOLDER,12,1
84832,ZINC WILLIE WINKIE CANDLE STICK,12,1
23084,RABBIT NIGHT LIGHT,12,1
84879,ASSORTED COLOUR BIRD ORNAMENT,12,1
84945,MULTI COLOUR SILVER T-LIGHT HOLDER,12,1
22113,GREY HEART HOT WATER BOTTLE,12,1
23356,LOVE HOT WATER BOTTLE,12,1
22726,ALARM CLOCK BAKELIKE GREEN,12,1
22727,ALARM CLOCK BAKELIKE RED ,12,1
16016,LARGE CHINESE STYLE SCISSOR,12,1
21916,SET 12 RETRO WHITE CHALK STICKS,12,1
84692,BOX OF 24 COCKTAIL PARASOLS,12,1
84946,ANTIQUE SILVER T-LIGHT GLASS,12,1
21684,SMALL MEDINA STAMPED METAL BOWL ,12,1
22398,MAGNETS PACK OF 4 SWALLOWS,12,1
23328,SET 6 SCHOOL MILK BOTTLES IN CRATE,12,1
23145,ZINC T-LIGHT HOLDER STAR LARGE,12,1
22466,FAIRY TALE COTTAGE NIGHT LIGHT,12,1
22061,LARGE CAKE STAND HANGING STRAWBERY,12,1
23275,SET OF 3 HANGING OWLS OLLIE BEAK,12,1
21217,RED RETROSPOT ROUND CAKE TINS,12,1
我的熊猫数据框看起来像 Pandas Dataframe
我试图获取下面的数据框,其中创建了一个新属性,该属性计算了某商品按升序购买的次数。 Required
我尝试了以下代码,但没有成功。
df_top_freq = data1.groupby(['Description'])['StockCode'].agg(
{"code_count": len}).sort_values("code_count", ascending=False).head(n).reset_index()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-32-8d5e96d38ae0> in <module>
----> 1 df_top_freq = data1.groupby(['Description'])['StockCode'].agg(
2 {"code_count": len}).sort_values("code_count", ascending=False).head(n).reset_index()
AttributeError: 'NoneType' object has no attribute 'groupby'
还有
count = data1['StockCode'].value_counts()
print(count)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-33-958a6e8a501c> in <module>
----> 1 count = data1['StockCode'].value_counts()
2 print(count)
TypeError: 'NoneType' object is not subscriptable
有人可以帮我吗?
答案 0 :(得分:0)
基于错误“ AttributeError:'NoneType'对象没有属性'groupby'”,您的变量 data1 似乎不是数据框,而是,它是一个NoneType变量,因此您无法调用groupby函数。
检查data1的值,然后尝试重新填充变量的数据,然后重试。
还不建议使用字典进行重命名,您可能需要检查以下链接以了解其他选项。
答案 1 :(得分:0)
这似乎在起作用:)
df_top_freq = data1.groupby("StockCode")['StockCode'].agg(
{"code_count": len}).sort_values("code_count", ascending=False).head(n).reset_index()
我是按照股票代码(而不是按说明)分组的。