利用python将excel中的大量分组竖行数据转为横行数据

   日期:2020-08-20     浏览:138    评论:0    
核心提示:@利用python将excel中的大量分组竖行数据转为横行数据话不多说,直接上示意图:想到这个问题也是今天工作所带来的的问题,网上爬虫下来的数据就是这种图片中左边的情况,也许是自己的爬虫技术不够到家,但是任务是转变成右边的数据模式,那只能硬着头皮做了。对于示意图这样很少的数据我想直接复制并进行选择性粘贴就行了,那如果是上万,十几万这类数据那又该怎么办呢、于是我百度了一下,没有找到自己满意的答案。想到了自己学了点python数据的简单处理,就有了一个思路,思路是这样的:发现A列C列是有规则有序循环的重

@利用python将excel中的大量分组竖行数据转为横行数据
话不多说,直接上示意图:

想到这个问题也是今天工作所带来的的问题,网上爬虫下来的数据就是这种图片中左边的情况,也许是自己的爬虫技术不够到家,但是任务是转变成右边的数据模式,那只能硬着头皮做了。对于示意图这样很少的数据我想直接复制并进行选择性粘贴就行了,那如果是上万,十几万这类数据那又该怎么办呢、
于是我百度了一下,没有找到自己满意的答案。想到了自己学了点python数据的简单处理,就有了一个思路,思路是这样的:发现A列C列是有规则有序循环的重复项,那我们可以先写在第一行,那B列的数据也是4个为一组循坏对应的,那我们可以利用python获取B列的所有数据,在对进行数据分组,写入其他表格,最后这个复制粘贴就OK了。
读取样本1数据:

首先要安装pandas库:pip install pandas
读取表格写入数据代码

// An highlighted block
import io
import sys
import pandas as pd#导入pandas库
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')

df = pd.read_excel("样本1.xlsx", usecols=[1],
                   names=None)  # 读取项目名称,2,不要列名
df_li = df.values.tolist()
results = []
for s_li in df_li:
    results.append(s_li[0])#遍历第2列每一行的数据放入results

fz_results = [results[i:i+4] for i in range(0,12,4)]
#将results列表4个为一组成的列表,很多数据就改成range(01,len(results),n)

#再次遍历fz_results中新列表

for td in fz_results:
    td1 = [str(i) for i in td]
    td2 = ' '.join(td1)#列表和字符串之间的转换
    #print(td2)

    with open('样本.csv','a+') as f:
        f.write(td2 + '\n')#最后创建csv文件并写入数据

    print("完成");

这里我用的是WPS软件打开写入的文件,如图:
能力有限,可以用execl自带的分列完成操作:

好了,最后进行快乐的复制粘贴就行,成品如图:

然后最后处理成千上万这种类型的数据也不失为一个办法,新人小白,自己一些想法分享给大家。

第一次发博客,有点紧张,如哪里处理不好的多多包涵,一起交流学习,谢谢观看!

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服