Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 在dataframe中获得最少的销售额_Python 3.x_Pandas - Fatal编程技术网

Python 3.x 在dataframe中获得最少的销售额

Python 3.x 在dataframe中获得最少的销售额,python-3.x,pandas,Python 3.x,Pandas,数据帧 Fresh Milk Grocery Channel 20 50 80 Hotel 40 10 30 Restaurant 100 90 20 Cafe 120 150 80 Hotel 450 910 30 Restaurant 10 90 20 Cafe 205 50 80 Hotel 403 10 30 Restau

数据帧

Fresh Milk Grocery Channel
20     50     80    Hotel
40     10     30    Restaurant
100    90     20    Cafe
120    150    80    Hotel
450    910    30    Restaurant  
10     90     20     Cafe
205    50     80    Hotel
403    10     30    Restaurant
10     90     20    Cafe
如何获得渠道的最低销售额并打印渠道名称


我想我们需要做群比。我试过了,但没有成功。有人能建议如何做到这一点吗?

您首先需要将所有项目合并到一列:

df['sum_of_items'] = df.sum(axis=1)
然后,您可以使用一个简单的groupby:

df.groupby('Channel')['sum_of_items'].sum()
结果是:

Channel
Cafe           450
Hotel          835
Restaurant    1913

首先需要将所有项目合并到一列中:

df['sum_of_items'] = df.sum(axis=1)
然后,您可以使用一个简单的groupby:

df.groupby('Channel')['sum_of_items'].sum()
结果是:

Channel
Cafe           450
Hotel          835
Restaurant    1913
案例1:考虑所有柱的最小值

最小信道

首先,我们计算每个通道的总数,我们可以使用:

输出

然后我们使用

案例2分列

案例1:考虑所有柱的最小值

最小信道

首先,我们计算每个通道的总数,我们可以使用:

输出

然后我们使用

案例2分列


因此,您可以创建一个列,其中包含所有三列的总和,如下图所示,然后获得花费最少的频道


df['Sales'] = df['Fresh'] + df['Milk'] + df['grocery']


df.groupby('Channel')['Sales'].sum().reset_index().sort_values('Sales', ascending = True).reset_index(drop=True).loc[0]

因此,您可以创建一个列,其中包含所有三列的总和,如下图所示,然后获得花费最少的频道


df['Sales'] = df['Fresh'] + df['Milk'] + df['grocery']


df.groupby('Channel')['Sales'].sum().reset_index().sort_values('Sales', ascending = True).reset_index(drop=True).loc[0]

销售栏在哪里?没有销售栏。上面的数据框只包含每个项目的销售。销售列在哪里?没有销售列。以上数据框仅包含每个项目的销售额。

df['Sales'] = df['Fresh'] + df['Milk'] + df['grocery']


df.groupby('Channel')['Sales'].sum().reset_index().sort_values('Sales', ascending = True).reset_index(drop=True).loc[0]