pestakin 2022-06-13 18:21 采纳率: 50%
浏览 157
已结题

Python实现导入文件和数据处理

所给文件为某工厂的三相电压、电流、功率因数、有功功率、无功功率和视在功率,读取30分钟数据,根据电压、电流和功率因数,计算有功功率、无功功率、视在功率,与实测数据对比,绘图对比计算值和实测值。
说明:
1.txt文件数据是经过处理的数据,读取后需删除空格,转换格式;有的文件第一行为乱码,可以删除;
2.电压.txt、电流.txt和PF.txt文件的数据是A、B、C、N相电压、电流、功率因数的最小值、平均值和最大值,使用平均值计算;
3.有功功率.txt、无功功率.txt、视在功率.txt文件的数据是A、B、C相和三相总功率的最小值、平均值和最大值;

文件无法上传,给出程序即可,感谢
可追加酬金

  • 写回答

3条回答 默认 最新

  • CSDN专家-HGJ 2022-06-14 02:29
    关注

    将原文本数据另存"utf-8"格式,读取时使用编码‘utf-8-sig',用pandas对数据进行类型转换,参考代码:

    import numpy as np
    import pandas as pd
    #a=np.loadtxt('电流.txt')
    pd.set_option('display.max_columns',None)
    def read_txt(fn):
        a=pd.read_table(fn,header=None,skiprows=1,encoding='utf-8-sig',delimiter='\t')
        a=a.applymap(lambda x:x.replace(' ',''))
        a=a.iloc[:,[0,1,2,3,4,6,7,8,10,11,12,14,15,16]]
        a['date']=a[[0,1]].apply(lambda x: ' '.join(x), axis=1)
        a['date']=pd.to_datetime(a['date'])
        a=a.set_index('date').drop([0,1],axis=1).astype(float).reset_index()
        print(a)
        print(a.info())
    f='电流2.txt'
    read_txt(f)
    
    [7228 rows x 13 columns]
    <class 'pandas.core.frame.DataFrame'>
    RangeIndex: 7228 entries, 0 to 7227
    Data columns (total 13 columns):
     #   Column  Non-Null Count  Dtype
    ---  ------  --------------  -----
     0   date    7228 non-null   datetime64[ns]
     1   2       7228 non-null   float64
     2   3       7228 non-null   float64
     3   4       7228 non-null   float64
     4   6       7228 non-null   float64
     5   7       7228 non-null   float64
     6   8       7228 non-null   float64
     7   10      7228 non-null   float64
     8   11      7228 non-null   float64
     9   12      7228 non-null   float64
     10  14      7228 non-null   float64
     11  15      7228 non-null   float64
     12  16      7228 non-null   float64
    dtypes: datetime64[ns](1), float64(12)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月22日
  • 已采纳回答 6月14日
  • 修改了问题 6月13日
  • 修改了问题 6月13日
  • 展开全部

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程