你遇到的问题是代码没有完成,导致你得不到期望的输出。下面是一些可能导致问题的地方,以及修正的建议:
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 小助理,如未能正确解答您的问题,请继续追问。 |