精华内容
下载资源
问答
  • import pandas as pd df_a = pd.DataFrame(data=[['A', 'B', 'C'], ['A1', 'B1', 'C1']]) df_a.columns df_a.columns.format()
    import pandas as pd
    df_a = pd.DataFrame(data=[['A', 'B', 'C'], ['A1', 'B1', 'C1']])
    df_a.columns
    df_a.columns.format()

    展开全文
  • df.to_csv写入到csv文件 pd.read_csv读取csv文件 df.to_json写入到json文件 pd.read_json读取json文件 df.to_html写入到html文件 pd.read_html读取 html文件 df.to_excel 写入到 excel 文件 ...

    ____tz_zs

    DataFrame 数据的保存和读取

    • df.to_csv 写入到 csv 文件
    • pd.read_csv 读取 csv 文件
    • df.to_json 写入到 json 文件
    • pd.read_json 读取 json 文件
    • df.to_html 写入到 html 文件
    • pd.read_html 读取 html 文件
    • df.to_excel 写入到 excel 文件
    • pd.read_excel 读取 excel 文件

    pandas.DataFrame.to_csv

    将 DataFrame 写入到 csv 文件

    https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_csv.html

    DataFrame.to_csv(path_or_buf=None, sep=', ', na_rep='', float_format=None, columns=None, header=True, index=True,
                     index_label=None, mode='w', encoding=None, compression=None, quoting=None, quotechar='"',
                     line_terminator='\n', chunksize=None, tupleize_cols=None, date_format=None, doublequote=True,
                     escapechar=None, decimal='.')
    

    参数:

    • path_or_buf : 文件路径,如果没有指定则将会直接返回字符串的 json
    • sep : 输出文件的字段分隔符,默认为 “,”
    • na_rep : 用于替换空数据的字符串,默认为''
    • float_format : 设置浮点数的格式(几位小数点)
    • columns : 要写的列
    • header : 是否保存列名,默认为 True ,保存
    • index : 是否保存索引,默认为 True ,保存
    • index_label : 索引的列标签名

    .

    # -*- coding:utf-8 -*-
    
    """
    @author:    tz_zs
    """
    
    import numpy as np
    import pandas as pd
    
    list_l = [[11, 12, 13, 14, 15], [21, 22, 23, 24, 25], [31, 32, 33, 34, 35]]
    date_range = pd.date_range(start="20180701", periods=3)
    df = pd.DataFrame(list_l, index=date_range,
                      columns=['a', 'b', 'c', 'd', 'e'])
    print(df)
    """
                 a   b   c   d   e
    2018-07-01  11  12  13  14  15
    2018-07-02  21  22  23  24  25
    2018-07-03  31  32  33  34  35
    """
    
    df.to_csv("tzzs_data.csv")
    """
    csv 文件内容:
    ,a,b,c,d,e
    2018-07-01,11,12,13,14,15
    2018-07-02,21,22,23,24,25
    2018-07-03,31,32,33,34,35
    """
    read_csv = pd.read_csv("tzzs_data.csv")
    print(read_csv)
    """
       Unnamed: 0   a   b   c   d   e
    0  2018-07-01  11  12  13  14  15
    1  2018-07-02  21  22  23  24  25
    2  2018-07-03  31  32  33  34  35
    """
    
    df.to_csv("tzzs_data2.csv", index_label="index_label")
    """
    csv 文件内容:
    index_label,a,b,c,d,e
    2018-07-01,11,12,13,14,15
    2018-07-02,21,22,23,24,25
    2018-07-03,31,32,33,34,35
    """
    
    read_csv2 = pd.read_csv("tzzs_data2.csv")
    print(read_csv2)
    """
      index_label   a   b   c   d   e
    0  2018-07-01  11  12  13  14  15
    1  2018-07-02  21  22  23  24  25
    2  2018-07-03  31  32  33  34  35
    """
    

     

    pandas.DataFrame.to_json

    将 Dataframe 写入到 json 文件

    https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_json.html

    DataFrame.to_json(path_or_buf=None, orient=None, date_format=None, double_precision=10, force_ascii=True,
                      date_unit='ms', default_handler=None, lines=False, compression=None, index=True)

    参数:

    • path_or_buf : 文件路径,如果没有指定则将会直接返回字符串的 json。

    代码:

    df.to_json("tzzs_data.json")
    
    read_json = pd.read_json("tzzs_data.json")
    print(read_json)
    """
                 a   b   c   d   e
    2018-07-01  11  12  13  14  15
    2018-07-02  21  22  23  24  25
    2018-07-03  31  32  33  34  35
    """

    json 文件

    {
        "a": {
            "1530403200000": 11,
            "1530489600000": 21,
            "1530576000000": 31
        },
        "b": {
            "1530403200000": 12,
            "1530489600000": 22,
            "1530576000000": 32
        },
        "c": {
            "1530403200000": 13,
            "1530489600000": 23,
            "1530576000000": 33
        },
        "d": {
            "1530403200000": 14,
            "1530489600000": 24,
            "1530576000000": 34
        },
        "e": {
            "1530403200000": 15,
            "1530489600000": 25,
            "1530576000000": 35
        }
    }

     

    pandas.DataFrame.to_html

    将 Dataframe 写入到 html 文件

    http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_html.html

    DataFrame.to_html(buf=None, columns=None, col_space=None, header=True, index=True, na_rep='NaN', formatters=None,
                      float_format=None, sparsify=None, index_names=True, justify=None, bold_rows=True, classes=None,
                      escape=True, max_rows=None, max_cols=None, show_dimensions=False, notebook=False, decimal='.',
                      border=None, table_id=None)

    代码:

    df.to_html("tzzs_data.html")
    
    read_html = pd.read_html("tzzs_data.html")
    print(read_html)
    """
    [   Unnamed: 0   a   b   c   d   e
    0  2018-07-01  11  12  13  14  15
    1  2018-07-02  21  22  23  24  25
    2  2018-07-03  31  32  33  34  35]
    """
    
    #
    print(read_html[0])
    """
       Unnamed: 0   a   b   c   d   e
    0  2018-07-01  11  12  13  14  15
    1  2018-07-02  21  22  23  24  25
    2  2018-07-03  31  32  33  34  35
    """

    HTML文件:

    <table border="1" class="dataframe">
      <thead>
        <tr style="text-align: right;">
          <th></th>
          <th>a</th>
          <th>b</th>
          <th>c</th>
          <th>d</th>
          <th>e</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <th>2018-07-01</th>
          <td>11</td>
          <td>12</td>
          <td>13</td>
          <td>14</td>
          <td>15</td>
        </tr>
        <tr>
          <th>2018-07-02</th>
          <td>21</td>
          <td>22</td>
          <td>23</td>
          <td>24</td>
          <td>25</td>
        </tr>
        <tr>
          <th>2018-07-03</th>
          <td>31</td>
          <td>32</td>
          <td>33</td>
          <td>34</td>
          <td>35</td>
        </tr>
      </tbody>
    </table>

    在浏览器中打开:

    .

     

    df.to_html 生成的是一个 html 格式的 table 表,我们可以在前后加入其他标签,丰富页面。ps:如果有中文字符,需要在 head 中设置编码格式。

    参考:Pandas Dataframes to_html: Highlighting table rows

    # -*- coding: utf-8 -*-
    """
    @author: tz_zs
    """
    import matplotlib.pyplot as plt
    import numpy as np
    import pandas as pd
    
    index = ["2018-07-01", "2018-07-02", "2018-07-03", "2018-07-04"]
    df = pd.DataFrame(index=index)
    df["一"] = [11, 12, 13, 14]
    df["二"] = [21, 22, 23, 24]
    print(df)
    """
                 一   二
    2018-07-01  11  21
    2018-07-02  12  22
    2018-07-03  13  23
    2018-07-04  14  24
    """
    
    axes_subplot = df.plot()
    # print(type(axes_subplot)) #<class 'matplotlib.axes._subplots.AxesSubplot'>
    plt.xlabel("time")
    plt.ylabel("num")
    plt.legend(loc="best")
    plt.grid(True)
    plt.savefig("test.png")
    
    HEADER = '''
        <html>
            <head>
                <meta charset="UTF-8">
            </head>
            <body>
        '''
    FOOTER = '''
            <img src="%s" alt="" width="1200" height="600">
            </body>
        </html>
        ''' % ("test.png")
    with open("test.html", 'w') as f:
        f.write(HEADER)
        f.write(df.to_html(classes='df'))
        f.write(FOOTER)
    

    .

    .

     

    pandas.DataFrame.to_excel

    将 DataFrame 写入 excel 文件

    pandas.DataFrame.to_excel

    DataFrame.to_excel(excel_writer, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, 
                       header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None,
                       merge_cells=True, encoding=None, inf_rep='inf', verbose=True, freeze_panes=None)

    .

    #!/usr/bin/python2.7
    # -*- coding:utf-8 -*-
    
    """
    @author:    tz_zs
    """
    
    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    
    list_l = [[1, 3, 3, 5, 4], [11, 7, 15, 13, 9], [4, 2, 7, 9, 3], [15, 11, 12, 6, 11]]
    index = ["2018-07-01", "2018-07-02", "2018-07-03", "2018-07-04"]
    df = pd.DataFrame(list_l, index=index, columns=['a', 'b', 'c', 'd', 'e'])
    print(df)
    """
                 a   b   c   d   e
    2018-07-01   1   3   3   5   4
    2018-07-02  11   7  15  13   9
    2018-07-03   4   2   7   9   3
    2018-07-04  15  11  12   6  11
    """
    
    df.to_excel("test.xls")
    

    .

     

    pandas.read_excel

    读取 excel 

     

    可能遇到的报错:

    ImportError: Missing optional dependency 'xlrd'. Install xlrd >= 1.0.0 for Excel support Use pip or conda to install xlrd.

    解决方法:安装 xlrd 包。

    stackoverflow 讨论:Python: Pandas pd.read_excel giving ImportError: Install xlrd >= 0.9.0 for Excel support

     

    其他文章:

    http://www.dcharm.com/?p=584

    https://blog.csdn.net/sinat_29957455/article/details/79059436

    https://www.cnblogs.com/pengsixiong/p/5050833.html

    .

    end

    展开全文
  • df_1.columns

    2020-11-25 23:31:06
    Python版本:Python 3.6 pandas.read_csv() 报错 OSError: Initializing from file failed,一般由两种情况引起:一种是函数参数为路径而非文件名称,另一种是函数参数带有中文(包括路径里边有中文)。...

    Python版本:Python 3.6
    pandas.read_csv() 报错 OSError: Initializing from file failed,一般由两种情况引起:一种是函数参数为路径而非文件名称,另一种是函数参数带有中文(包括路径里边有中文)。

    # -*- coding: utf-8 -*-
    """
    Created on Mon Jun  4 09:44:36 2018
    @author: wfxu
    """
    import pandas as pd
    da1=pd.read_csv('F:\\数据源')
    da2=pd.read_csv('F:\\2.0 数据源\\工程清单.csv')

     这两种情况报错信息都是一样:

    Traceback (most recent call last):
        (报错细节不展示)
      File "pandas/_libs/parsers.pyx", line 720, in pandas._libs.parsers.TextReader._setup_parser_source
    
    OSError: Initializing from file failed

     对于第一种情况很简单,原因就是没有把文件名称放到路径的后面,把文件名称添加到路径后面就可以了。还可以在代码中把文件夹切换到目标文件所在文件夹,过程太繁杂,不喜欢也不推荐,所以就不做展示了。
    第二种情况,即使路径、文件名都完整,还是报错的原因是这个参数中有中文,但是Python3不是已经支持中文了吗?参考了错误原因和pandas的源码,发现调用pandas的read_csv()方法时,默认使用C engine作为parser engine,而当文件名中含有中文的时候,用C engine在部分情况下就会出错。所以在调用read_csv()方法时指定engine为Python就可以解决问题了。

    da4=pd.read_csv('F:\\数据源\\工程清单.csv',engine='python')

     对于第二种情况还有另外一种解决方法,就是使员工open函数打开文件,再取访问里面的数据:

    da3=pd.read_csv(open('F:\\4.0 居配工程监测\\2.0 数据源\\02.南京新居配工程清单.csv',encoding='utf-8'),header=1 ,sep=',', engine='python')

     

     

     

    展开全文
  • 首先,sys.columns vs syscolumns,这个自不必多说。 sys.columns是SQL Server从2005版本起引入的新的系统级视图。相关链接如下: Mapping SQL Server 2000 System Tables to SQL Server 2005 System Views ...

    首先,sys.columns vs syscolumns,这个自不必多说。

    sys.columns是SQL Server从2005版本起引入的新的系统级视图。相关链接如下:

    使用sys.columns,避免了直接访问系统表,这将使某些权限受限的用户直接受益。


    而 INFORMATION_SCHEMA.columns 和 sys.columns 相比,哪个是更推荐的呢?

    答案是INFORMATION_SCHEMA.columns。因为INFORMATION_SCHEMA.columns是符合ISO标准的,而sys.columns这种东西是微软自家搞出来的私有的东西。

    其实INFORMATION_SCHEMA.columns 和 sys.columns二者本质上来说都是view。二者本质一样的前提下,我们推荐符合ISO标准的,这样的话这种experience也能和其它database的experience保持一致。


    关于INFORMATION_SCHEMA,相关链接如下:


    因此,举个例子,假如我们要判断某个表是否存在某个字段,如果不存在则添加该字段并且绑定一个默认值,那么我的推荐写法如下:

    -- Alter table LabelSkin: Add column Width 
    
    if not exists 
    (
    	select column_name from INFORMATION_SCHEMA.columns where table_name = 'LabelSkin' and column_name = 'Width'
    )
    	ALTER TABLE dbo.LabelSkin 
    	ADD Width numeric(18, 0) NOT NULL 
    	CONSTRAINT DF_LabelSkin_Width DEFAULT 0;
    
    


    展开全文
  • pd.columns和pd.columns.tolist

    万次阅读 2016-10-13 21:32:10
    food_info.columns.tolist() 与Numpy一样,用shape属性来显示数据的格式 dimensions = food_info.shape print (dimensions) 输出:(8618,36) 表示这个表格有8618行和36列的数据,其中dimensions[0]为...
  • 首先,初始化一个dataframe,如图:输出结果:一、df.at的用法作用:获取某个位置的值,例如,获取第0行,第a列的值,即:index=0,columns='a'data = df.at[0, 'a']输出结果:二、df.ix的用法作用:修改df指定位置...
  • df.to_csv写入到csv文件 pd.read_csv读取csv文件 df.to_json写入到json文件 pd.read_json读取json文件 df.to_html写入到html文件 pd.read_html读取 html文件 df.to_excel 写入到 excel 文件 pd.read_excel ...
  • 很多帖子都在讲df.groupby,对df[columns].groupby介绍很少,我今天恰好用到,总结以下。特别针对某一列是二分类的,要计算占比的时候,简直太方便了。举例数据a中第0列的0和1分别代表女性和男性。 import pandas ...
  • df.loc和df.iloc函数用法的df由pandas.read_csv()函数读取而来。 1. DataFrame.loc Access a group of rows and columns by label(s) or a boolean array. .loc[] is primarily label based, but may also be used ...
  • 如:df.sum()、df.min()、df.max()、df.decribe()等。 import numpy as np import pandas as pd from pandas import Series , DataFrame s1 = Series ( [ 1 , 2 , 3 ] , index = [ 'A' , 'B...
  •  t.Columns.Add(col);  col  =   new  DataColumn( " bbb " );  t.Columns.Add(col);  col  =   new  DataColumn( " c " );  t.Columns.Add(col);   ...
  • 【pandas】 之 df.sub、df.rsub

    千次阅读 2018-07-23 21:31:20
    ____tz_zs ...DataFrame.sub(other, axis='columns', level=None, fill_value=None) https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.sub.html pandas.DataFrame.r...
  • df.drop_duplicates() DataFrame.drop_duplicates(self, subset=None, keep=‘first’, inplace=False) 参数: subset : column label or sequence of labels, optional Only consider certain columns for ...
  • pandas之DataFrame取行列(df.loc(),df.iloc())以及索引

    千次阅读 多人点赞 2020-01-16 19:15:02
    import pandas as pd import numpy as np df = pd.DataFrame(np.arange(24).reshape(6,4),index=list("ABCDEF"),columns=list("WXYZ")) # df 输出的结果为: W X Y Z A 0 1 2 3 B 4 5 6 7 C 8...
  • df_18.rename(columns=lambda x: x.strip().lower().replace(' ','_'),inplace=True) 这是一个在数据集中用下划线和小写标签代替空格的代码 我想问的是为什么coulumns后面我没输入列名,只是一个函数,而且这个...
  • Python笔记:df.loc[]和df.iloc[]的区别

    万次阅读 多人点赞 2019-03-06 10:24:40
    columns = [ 'x' , 'y' , 'z' , 8 , 9 ] ) print ( df ) # df如下: x y z 8 9 a NaN NaN NaN NaN NaN b NaN NaN NaN NaN NaN c NaN NaN NaN NaN NaN d NaN NaN NaN NaN NaN e NaN NaN NaN NaN ...
  • df.reset_index( ) 由于groupby函数不能对index进行组合,可以reset_index()把index变成columns后在进行groupby的计算: # 先把MMR 的表格走一个pivot_table: pivot = pd.pivot_table(mmr, index = ['Sales','strat....
  • pandas.df.pivot()

    2020-02-24 18:12:09
    df.pivot(index=None, columns = None, values=None) 原来的interactions_train_df.head() #Creating a sparse pivot table with users in rows and items in columns users_items_pivot_matrix_df = interactions...
  • df.isnull使用细节

    千次阅读 2018-06-20 21:05:25
    代码如下所示:df=pd.DataFrame(np.random.randn(5,5),columns=list('abcde'))df['g']=np.nandf['h']=np.nandf.ix[0,'g']=10print(df.isnull())print(df.isnull().values)print(df.values[df.isnull().values==True]...
  • Pandas query 的用法, df.query

    万次阅读 多人点赞 2019-03-28 18:03:54
    df.query 今天看到了query的用法,被这个函数的简洁所折服… df.query(expr,inplace = False,** kwargs )# 使用布尔表达式查询帧的列 参数: # expr:str要评估的查询字符串。你可以在环境中引用变量,在它们....
  • df.plot

    千次阅读 2020-04-24 16:09:55
    使用DataFrame的plot方法绘制图像会按照数据的每一列绘制一条曲线,默认按照列columns的名称在适当的位置展示图例,比matplotlib绘制节省时间,且DataFrame格式的数据更规范,方便向量化及计算。 二、df.plot() ...
  • pandas学习之df.sample

    千次阅读 多人点赞 2020-06-16 14:11:46
    pandas学习之df.sample df.sample()用于从dataframe或者series中,随机取样。sample 美['sæmp(ə)l] v采样;取样;n样品 官方文档: DataFrame.sample(self: ~ FrameOrSeries, n=None, frac=None, replace=False, ...
  • df.head()如何才能将信息显示完全

    千次阅读 2020-08-19 22:29:31
    首先我们输入这些代码进行读取 import pandas as pd import numpy as np from matplotlib import pyplot as plt ...df=pd.read_csv(file_path) print(df.info()) print(df.head(1)) 得到以下结果 可以看出显示不完全
  • df.drop()

    万次阅读 2019-08-19 16:51:11
    用法:DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False) 参数说明: labels 就是要删除的行列的名字,用列表给定 axis 默认为0,指删除行,因此删除columns时要指定axis=1; index ...
  • DataFrame的插入函数df.insert

    千次阅读 2019-08-14 17:36:38
    loc : int #使用整型数据,是列数据插入的位置,必须是0到len(columns)之间的数 column : string, number, or hashable object #类型可以是字符串、数字或者object。表示列的标签名 value : int, Series, or ...
  • Pandas DataFrame的基本属性详解

    万次阅读 多人点赞 2019-06-24 19:13:33
    Pandas DataFrame的一些基本属性 基本功能列表 ...df = pd.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False) 创建一个DataFrame df.index df.columns df.axes df.T df.info()...
  • import pandas as pd pdd=pd.read_csv(r'C:\Users\pt0531\Desktop\2019-01.csv',dtype=...print(pdd.columns) len(pdd) # 144538 #4列['so_date', 'so_voucher_no', 'series_code'] grouped=pdd.groupby(pdd['so_vo...
  • 需求:使用pandas从hive读取数据后。每一列都会被添加上hive表名。example:hive_table_name.column_name。...df.columns = [i.split('.', 1)[1] for i in df.columns] 方式2: df.columns = ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 73,855
精华内容 29,542
关键字:

df.columns