首页 > 解决方案 > Pandas DF 排列单元格并添加前缀

问题描述

数据框示例 - 先前清理过的 pandas.read_excel 的结果:

将熊猫导入为 pd
将 numpy 导入为 np

raw_data = {'ref': ['409075', '405168', '035751', '039374', '331949', '331951', '307128'],
        'description': ['Product 7 (12X)', 'Product 6 (8X)', 'Product 2', 'Product 1', 'Product 2', 'Product 3', 'Product 3'],
        '制造商': [np.nan, np.nan, 'Companyname1', 'Comp.2', 'Company3', '公司名称 4', '制造商 5'],
        '类型':[np.nan,np.nan,'Rev。0', np.nan, np.nan, np.nan, '类型 5'],
        '数量': [6, 4, 4, 2, 12, 12, 12],
        'val':[np.nan,np.nan,np.nan,np.nan,np.nan,np.nan,np.nan],
        '序列': [np.nan, np.nan, np.nan, 58690, 900078, 69402, 900078]}
df = pd.DataFrame(raw_data, columns = ['ref_maker', 'description', 'serial', 'maker', 'type', 'val, ''qty'])

以下是所需的输出(以列为单位):

  1. 参考
  2. a) 描述 + b) 制造商 + c) 类型 + d) val + e) 序列号
  3. 数量

条件:结果,连接的描述列不得超过 30 个字符,并且不应剪切导入的单元格。

(部分包含在:Prepare Pandas DataFrame for excel write 中

| 参考 | 说明(最多 30 通道)| 数量 |
|-------- |---------------- |----- |
| 409075 | 产品 7 (12X) | 6 |
| 405168 | 产品 6 (8X) | 4 |
| 35751 | 产品 2 | 4 |
| | MKR:公司名称1 | |
| | 类型:Rev. 0 | |
| 39374 | 产品 1 | 2 |
| | MKR:比较 2;SRL: 58690 | |
| 331949 | 产品 2 | 12 |
| | MKR:公司3;SRL: 900078 | |
| 331951 | 产品 3 | 12 |
| | MKR:公司名称 4 | |
| | SRL: 69402 | |
| 307128 | 产品 3 | 12 |
| | MKR:制造商 5;类型:类型 5 | |
| | SRL: 900078 | |

我试图找到解决方案,但由于不理解它们(正确地),我没有成功地将它们更改为我的需求。希望能满足要求。

感谢任何帮助和提示。

标签: pythonpandasdataframe

解决方案


推荐阅读