python按行拆分表格_Python将单元格中的多个值拆分为多行
使用:#create dataframe
df = pd.read_csv(filename, sep=';')
#split all values
df = df.applymap(lambda x: x.split('|'))
print (df)
fruit_type fruit_color fruit_weight
0 [Apple, Banana] [Red, Yellow] [2, 1]
1 [Orange] [Orange] [4]
2 [Pineapple, Grape, Watermelon] [Brown, Purple, Green] [12, 1, 15]
#get position of max weight
a = pd.DataFrame(df['fruit_weight'].values.tolist()).astype(float).idxmax(1).tolist()
print (a)
[0, 0, 2]
#convert df to dictionary
b = df.to_dict('list')
print (b)
{'fruit_weight': [['2', '1'], ['4'], ['12', '1', '15']],
'fruit_color': [['Red', 'Yellow'], ['Orange'], ['Brown', 'Purple', 'Green']],
'fruit_type': [['Apple', 'Banana'], ['Orange'], ['Pineapple', 'Grape', 'Watermelon']]}
^{pr2}$
计时:df = pd.concat([df]*1000).reset_index(drop=True)
def col(df):
df = df.applymap(lambda x: x.split('|'))
idx = df.index.repeat(df.fruit_weight.str.len())
df = df.apply(lambda x: pd.Series(np.concatenate(x.tolist())), 0)
return df.assign(idx=idx).groupby('idx', group_keys=False).apply(lambda x: x.sort_values('fruit_weight', ascending=False).head(1))
def jez(df):
df = df.applymap(lambda x: x.split('|'))
a = pd.DataFrame(df['fruit_weight'].values.tolist()).astype(float).idxmax(1).tolist()
b = df.to_dict('list')
a = {k: [k1[v1] for k1,v1 in zip(v, a)] for k, v in b.items()}
return pd.DataFrame(a)
print (col(df))
print (jez(df))
In [229]: %timeit (col(df))
1 loop, best of 3: 1.58 s per loop
In [230]: %timeit (jez(df))
100 loops, best of 3: 19.3 ms per loop
python按行拆分表格_Python将单元格中的多个值拆分为多行相关推荐
- 【pandas】将单元格中的多个数据拆分为多行数据(explode),以csv文件为源文件进行处理
[pandas]将单元格中的多个数据拆分为多行数据(explode) 1.原始数据(test.csv) 2.需求 将"别名"."科目"这两列中带有多个数据的单元 ...
- FineUI大版本升级,外置ExtJS库、去AXD化、表格合计行、表格可编辑单元格的增删改、顶......
2019独角兽企业重金招聘Python工程师标准>>> FineUI v3.3.0 更新的内容非常多,所以一下子从 v3.2.6 连跳 3 个小版本,直接来到了 v3.3.0.详细的 ...
- FineUI大版本升级,外置ExtJS库、去AXD化、表格合计行、表格可编辑单元格的增删改、顶部菜单框架
FineUI v3.3.0 更新的内容非常多,所以一下子从 v3.2.6 连跳 3 个小版本,直接来到了 v3.3.0.详细的更新记录请参考这里:http://fineui.com/version 主 ...
- FineUI大版本升级,外置ExtJS库、去AXD化、表格合计行、表格可编辑单元格的增删改、顶部菜单框架...
FineUI v3.3.0 更新的内容非常多,所以一下子从 v3.2.6 连跳 3 个小版本,直接来到了 v3.3.0.详细的更新记录请参考这里:http://fineui.com/version 主 ...
- excel高效办公——Excel如何将同一单元格中的日期和时间拆分(分列法)
问题:一个单元格存放时间和日期,如何将时间和日期拆分放在两个单元格? 数据为:2020/05/05 08:18,日期与时间之间有空格 1.在数据--分列 2.选择分割符号 3.选择使用空格进行分列 4 ...
- python自动填写excel_Python:根据前面单元格中的公式自动填充Excel中的单元格
使用Python和win32com: 我在Excel文件中有一个公式,在单元格A5:A54.我试着用同样公式的值填充A55:A61单元格.我在网上搜索发现: http://pythonexcels.c ...
- word表格处理:单元格中文字显示设置技巧
在日常的工作学习中,Word制表虽然没有Excel制表那么灵活,但也是不可避免的.比如,在一些需要数据论证的报告中就会经常使用到.很多时候表格的制作其实比文字排版还要麻烦. 今天小编就给大家分享一个制 ...
- Excel2013 利用phonetic函数将多行数据合并到同一单元格中
场景:有一列邮箱数据,现在需要将他们合并到同一个单元格内,且邮箱之间要用英文的逗号隔开 以前五条邮箱为例,利用phonetic函数实现这种合并: 合并结果: 其中,E列是添加的辅助列.
- 不再为DataGrid生成的表格的单无格中的内容过长、自动折行、表格撑开等问题而烦恼----一个很久以前的做品...
是我以前用在一个项目中的,如有些地方不适用于你,你可以修改部分代码. 功能: 按列分色: 过长内容自动隐藏: 鼠标Over自动展开 ...
最新文章
- 收藏 | 神经网络的 5 种常见求导,附详细的公式过程
- 从ASP.NET得到Microsoft Word文档
- android碎片功能实现,Android 列表碎片
- 【v2.x OGE-example 第二章(第二节) 修改器的使用】
- 图像矫正与车牌识别资料整理
- 源码实战 | 本地可跑,上线就崩?慌了!
- python编码-python中处理中文编码问题
- 笔记-项目风险管理-风险应对
- 学习opencv3中文版_给视觉组新生的一点学习建议
- C# - 多线程(基础)
- linux bash 逻辑,Bash 中的逻辑和() | Linux 中国
- 一天没出个版本,让别人试试哪里有问题
- multisim安装
- C盘空间不够?教你简单扩容C盘空间
- WSAData小说明(转)
- idea新建sourceFolder
- 求三角形面积-gyy
- 结巴分词 java_Java版结巴分词自定义词库
- JavaScript级联链表
- EMV规范(七)——持卡人验证(CVM)一