对熊猫数据框系列值进行分类

时间:2019-12-12 11:27:03

标签: python pandas dataframe machine-learning grouping

我是熊猫的新手,正在尝试自动创建类别并将值分组。

我的数据框:

df = pd.DataFrame({'Slug': ['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'b', 'c', 'c', 'c'],
                   'Position': ['0', '1', '2', '3', '4', '0', '1', '2', '3', '0', '1', '2'],
                   'Brand': ['Mazda', 'BMW', 'Ford', 'Fiat', 'Dodge', 'Mazda', 'BMW', 'Ford', 'Fiat', 'BMW', 'Ford', 'Fiat'],
                   'Sessions': ['70', '', '', '', '', '60', '', '', '', '50', '', ''],
                   'Transactions': ['1', '', '', '', '', '2', '', '', '', '3', '', ''],
                   'Ecommerce': ['1', '', '', '', '', '3', '', '', '', '4', '', ''],
                   'CTR': ['10', '', '', '', '', '15', '', '', '', '5', '', ''],
                   'All': ['11', '', '', '', '', '1', '', '', '', '4', '', '']})

我正在尝试回答一个问题:哪种品牌布局的转换效果最好。排名栏声明了品牌在网站上的书写方式:

示例:

0 A #Ford
1 B #BMW
2 C #Fiat
3 D #Dodge

问题可能是福特排在第二,宝马排在第一将导致更多的转换。

我要做的第一件事是为每个唯一的组生成类别,大约有10个不同的品牌以及100种不同的设置方式。

例如:

Group1可能是:

0 A #Ford
1 B #BMW
2 C #Fiat
3 D #Dodge

Group2可以是:

0 B #BMW
1 A #Ford
2 C #Fiat
3 D #Dodge

然后我的DataFrame如下所示:

Slug    Group   Sessions    Transactions   Ecommerce    CTR     All
a       1       70          1              1            10      10
b       2       60          2              3            15      11
c       1       60          2              3            15      11
d       3       60          2              3            15      11
e       2       60          2              3            15      11

Groups通过positionbrand列进行分类。 Slug可以理解为一个国家。例如,在国家a中,实现了第1组70次会议的布局;在国家b中,实现了第2组60次会议的布局,依此类推。

以此类推,然后我可以比较sessionstransactions中的组性能指标和我在DataFrame中具有的其他列值。

transactionssession等参数用于品牌的整个布局,例如:

0 Ford
1 BMW
2 Fiat
3 Dodge
# this layout achieved 70 sessions and 5 conversions

所以我的问题可以分为3个单独的部分:

1)如何生成positionbrand的组

2)也许你们中的一些人遇到了类似的问题,并且知道确定brands的最佳布局的任何方法

3)我尝试了一些机器学习,也许您可​​以建议我可以将哪种模型应用于我的问题

谢谢您的建议。

0 个答案:

没有答案