蓄着 的那一汪水^_^ 2021-05-15 11:41 采纳率: 0%
浏览 95

snownlp excel 批量处理的问题

http://blog.sina.com.cn/s/blog_15e4206d00102zedv.html

用这个的介绍,其中第一步

 

import pandas as pd
import jieba

data=pd.read_excel(r"D:\DATAS\comments.xlsx")   # 读取Excel数据
data.head(10)    # 显示前10条记录,验证是否读取成功
hangshu=len(data)     # 计算Excel中总记录数
hangshu            # 显示总评论数

counter=0
while counter:
    text = data.评论.iloc[counter]          # 读取counter行,评论列单元格内容
    seg_list = jieba.cut(text, cut_all=False)      # 对读取的text评论分词
    data.分词.iloc[counter]=str("/ ".join(seg_list))   # 把分词结果赋给相应的单元格
    counter=counter+1                          # counter+1,处理下一行数据

data.to_excel(r"D:\DATAS\comments2.xlsx")    # 把结果保存到新Excel表中

 

在新的文件中分词一列没有内容,请问这是什么原因呢?,怎么改进

  • 写回答

1条回答 默认 最新

  • 关注

    根据提供的代码,问题出在while循环的条件上。循环条件为counter,而在循环开始时,counter的值为0,因此循环根本不会执行。因此,分词一列没有内容。要解决这个问题,需要将while循环的条件更改为while counter < hangshu。这将确保循环在数据框中的每一行上运行,而不仅仅是第一行。修改后的代码如下所示:

    import pandas as pd
    import jieba
    
    data=pd.read_excel(r"D:\DATAS\comments.xlsx")   # 读取Excel数据
    data.head(10)    # 显示前10条记录,验证是否读取成功
    hangshu=len(data)     # 计算Excel中总记录数
    hangshu            # 显示总评论数
    
    counter=0
    while counter < hangshu:
        text = data.评论.iloc[counter]          # 读取counter行,评论列单元格内容
        seg_list = jieba.cut(text, cut_all=False)      # 对读取的text评论分词
        data.分词.iloc[counter]=str("/ ".join(seg_list))   # 把分词结果赋给相应的单元格
        counter=counter+1                          # counter+1,处理下一行数据
    
    data.to_excel(r"D:\DATAS\comments2.xlsx")    # 把结果保存到新Excel表中
    
    

    这应该会解决问题并将分词结果保存到新的Excel文件中。

    评论

报告相同问题?

悬赏问题

  • ¥15 用Matlab实现图中的光线追迹
  • ¥15 联想笔记本开机出现系统更新界面
  • ¥15 各位帮帮我 我不想重做系统
  • ¥30 微信小程序蓝牙数据透传
  • ¥15 加氢站氢负荷数据集来源
  • ¥15 umi接入sentry遇到问题
  • ¥15 HBuilderX打包H5网页,扫码模块无法使用
  • ¥15 Javascript跳转页面后,无法执行后面代码,如何解决?
  • ¥15 echarts绘制图表
  • ¥15 请教两个关于高德地图定位不准的技术问题