鱼C论坛

 找回密码
 立即注册
查看: 134|回复: 2

运行成功但是没出现新文件,保存地址换了好几个了也没用

[复制链接]
发表于 2024-10-20 00:15:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import pandas as pd

# 读取Excel文件
input_file_path = r'C:\Users\Administrator\Desktop\论文1综述\知网802.xls'
output_file_path = r'C:\Users\Administrator\Desktop\论文1综述'

try:
    df = pd.read_excel(input_file_path)
    print(f"成功读取文件:{input_file_path}")
except Exception as e:
    print(f"读取文件时发生错误:{e}")
    exit()

# 提取Keyword-关键词列和Year-年列
try:
    keywords = df['Keyword-关键词']
    years = df['Year-年']
    print("成功提取关键词和年份列")
except Exception as e:
    print(f"提取列时发生错误:{e}")
    exit()

# 初始化字典来存储关键词及其出现次数和年份列表
keyword_data = {}

# 遍历每行数据
for index, (keyword_str, year) in enumerate(zip(
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-10-20 00:34:08 | 显示全部楼层
你遇到的问题是代码没有完成,导致你得不到期望的输出。下面是一些可能导致问题的地方,以及修正的建议:

1. **读取和提取数据**:你正在尝试从`pandas`的`DataFrame`中提取关键词和年份,但没有指定具体的列名。目前的代码只初始化了两个变量,没有对具体的列进行任何操作或过滤。

  
keywords = df['Keyword-关键词']  # 假设你的Excel文件中这一列的名称
    years = df['Year-年']           # 同理,此列的名称

2. **缺少完整的遍历逻辑**:你的代码在`for`循环中结束了,这是因为缺少了遍历过程和最终的文件保存代码。遍历数据并保存到新文件的标准方法如下:

  
for index, row in df.iterrows():
        keyword_str = row['Keyword-关键词']  # 确保列名正确
        year = row['Year-年']
        if pd.notna(keyword_str):
            keyword_list = [kw.strip() for kw in keyword_str.split(';')]  # 假设关键词以分号分隔
            for keyword in keyword_list:
                if keyword in keyword_data:
                    keyword_data[keyword]['count'] += 1
                    keyword_data[keyword]['years'].append(year)
                else:
                    keyword_data[keyword] = {'count': 1, 'years': [year]}

3. **存储数据到文件**:将整理好的数据保存到一个新的Excel或CSV文件中,如果目标是文件输出,需要补充以下代码:

  
output_df = pd.DataFrame([
        {'Keyword': k, 'Count': v['count'], 'Years': ','.join(map(str, v['years']))}
        for k, v in keyword_data.items()
    ])
    
    try:
        output_file = output_file_path + r'\keyword_analysis.xlsx'  # 保存路径和文件名
        output_df.to_excel(output_file, index=False)
        print(f"分析结果已保存到:{output_file}")
    except Exception as e:
        print(f"保存文件时发生错误:{e}")

确保你在代码中替换了正确的列名和路径。运行代码后,检查目标文件夹下是否有生成的新文件。是否能成功提取并保存数据还取决于输入文件的格式和内容,所以可以先逐步测试。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-10-20 14:10:21 | 显示全部楼层
这也没看到你哪里有生成文件的代码呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 13:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表