python 数据分析 问题记录

    xiaoxiao2021-03-25  305

    1 pandas处理数据库,对字符使用astype(‘str’)时报错:’ascii’ codec can’t encode character u’\u4e2d’ in position 0) 解决:(1)打开导入时指定文档的编码格式 (2) 引入 sys,设置coding格式。

    '''1''' pd.read_csv('address',encoding='gbk') '''2''' import sys reload(sys) sys.setdefaultencoding('utf-8') print str(unicode(k))

    2 数据中时间格式的相互转化:

    import time datetime = "2013-10-10 23:40:00" # 先转换为时间数组,然后转换为其他格式 timeArray = time.strptime(datetime, "%Y-%m-%d %H:%M:%S") otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)

    3 日期格式数据作差:

    from datetime import datetime In [28]: a=datetime.now() In [29]: b=datetime.now() In [32]: a Out[32]: datetime.datetime(2015, 4, 7, 4, 30, 3, 628556) In [33]: b Out[33]: datetime.datetime(2015, 4, 7, 4, 34, 41, 907292) In [34]: str(a) 字符串的转换,用户储存到文本或者数据库 Out[34]: '2015-04-07 04:30:03.628556' In [35]:datetime.strptime(str(a),"%Y-%m-%d %H:%M:%S.%f") Out[35]:datetime.datetime(2015, 4, 7, 4, 30, 3, 628556) In [36]: (b-a) Out[36]: datetime.timedelta(0, 278, 278736) In [37]: (b-a).seconds 时间差的计算,单位为秒 Out[37]: 278

    4.pandas 行/类处理:

    pandas 行/列 求和: http://blog.csdn.net/duxu24/article/details/52986396

    列相乘/除:

    df['c'] = df['a']* df['b'] 删除列: del df['A']
    转载请注明原文地址: https://ju.6miu.com/read-124.html

    最新回复(0)