You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本科论文负荷曲线绘制:Pandas读取制表符分隔CSV的问题

解决方案:Pandas读取制表符分隔CSV并绘制负荷曲线

你的CSV文件存在两个关键特性需要在读取时配置:制表符作为字段分隔符、逗号作为小数点符号,默认的pd.read_csv()无法自动识别,修改读取代码即可解决:

修改后的核心读取逻辑

将原代码中的df = pd.read_csv(filename)替换为:

df = pd.read_csv(
    filename,
    sep='\t',          # 指定制表符为列分隔符
    decimal=',',       # 识别逗号为小数点符号
    usecols=[0]        # 仅读取第一列,规避首行末尾多余逗号产生的空列
)

完整可运行代码

from oemof import solph
import pandas as pd
import matplotlib.pyplot as plt
from oemof.tools import economics
import numpy as np
from oemof.tools import logger

logger.define_logging()

logger.info('Programm gestartet')

filename = 'PV.csv'
# 配置读取参数适配你的CSV格式
df = pd.read_csv(
    filename,
    sep='\t',
    decimal=',',
    usecols=[0]
)

logger.info('Datei wurde eingelesen')

ax = df.plot.area(subplots=True, figsize=(10,7))

ax[0].set_ylabel("Leistung in kW")
ax[0].set_xlabel("Zeit in h")

plt.title('power demand')
plt.tight_layout()
plt.show()
logger.info('Programm beendet')

参数说明

  • sep='\t':明确指定制表符(\t)作为列之间的分隔符,替代Pandas默认的逗号分隔规则。
  • decimal=',':适配欧洲地区的小数表示格式(用逗号代替点),确保所有数值能被正确解析为浮点数。
  • usecols=[0]:由于你的CSV首行末尾存在多余逗号,会生成无效空列,该参数仅保留第一列的有效数据。

运行修改后的代码,即可正确读取数据并生成符合需求的负荷曲线图表。

内容的提问来源于stack exchange,提问作者Andy Fröhlich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 20:33:21