简体   繁体   English

如何将数据框列转换为二维数组?

[英]How To Convert A Dataframe Column Into 2D Array?

I've the below dataset:我有以下数据集:

Sample Dataset样本数据集

My objective is to create a 2D array of the column 'Products' for this dataset.我的目标是为此数据集创建列“产品”的二维数组。

Now, if I do the following code:现在,如果我执行以下代码:

prodarr = Order_Details[['Product']].to_numpy()

It returns me the result as follows:它返回给我的结果如下:

 [['PRODUCT_75'],
       ['PRODUCT_75'],
       ['PRODUCT_63'],
       ['PRODUCT_63'],
       ['PRODUCT_34,PRODUCT_86,PRODUCT_57,PRODUCT_89'],
       ['PRODUCT_34,PRODUCT_66,PRODUCT_58,PRODUCT_83'],
       ['PRODUCT_75'],
       ['PRODUCT_63,PRODUCT_90,PRODUCT_27,PRODUCT_5'],
       ['PRODUCT_26'],
       ['PRODUCT_63'],
       ['PRODUCT_63'],
       ['PRODUCT_5,PRODUCT_34'],
       ['PRODUCT_84,PRODUCT_27'],
       ['PRODUCT_27'], ...]

Now, this is an undesirable situation for me, as I wanted all the distinct products as different elements in a given row.现在,这对我来说是一个不受欢迎的情况,因为我希望所有不同的产品作为给定行中的不同元素。 What I mean is that the output should instead be like this:我的意思是输出应该是这样的:

[['PRODUCT_75'],['PRODUCT_63'],['PRODUCT_63'],['PRODUCT_34','PRODUCT_86','PRODUCT_57','PRODUCT_89'], ['PRODUCT_34','PRODUCT_66','PRODUCT_58','PRODUCT_83'], ['PRODUCT_75'], ['PRODUCT_63','PRODUCT_90','PRODUCT_27','PRODUCT_5'], ...]

This means that it is that on each row there are multiple columns of strings and not just one.这意味着在每一行上都有多列字符串,而不仅仅是一列。

How should I approach this conundrum?我应该如何解决这个难题? Will have to segregate the strings based on commas and make use of df.iterrows ?是否必须根据逗号分隔字符串并使用df.iterrows

here is one way to do it这是一种方法

df = df['product'].str.split(',', expand=True)
    0   1   2   3
0   PRODUCT_75  None    None    None
1   PRODUCT_75  None    None    None
2   PRODUCT_63  None    None    None
3   PRODUCT_63  None    None    None
4   PRODUCT_34  PRODUCT_86  PRODUCT_57  PRODUCT_89
5   PRODUCT_34  PRODUCT_66  PRODUCT_58  PRODUCT_83
6   PRODUCT_75  None    None    None
7   PRODUCT_63  PRODUCT_90  PRODUCT_27  PRODUCT_5
8   PRODUCT_26  None    None    None
9   PRODUCT_63  None    None    None
10  PRODUCT_63  None    None    None
11  PRODUCT_5   PRODUCT_34  None    None
12  PRODUCT_84  PRODUCT_27  None    None
13  PRODUCT_27  None    None    None

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM