zoukankan      html  css  js  c++  java
  • Pandas设置值

    1、创建数据

    >>> dates = pd.date_range('20130101', periods=6)
    >>> df = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates, columns=['A','B','C','D'])
    >>> print(df)
                 A   B   C   D
    2013-01-01   0   1   2   3
    2013-01-02   4   5   6   7
    2013-01-03   8   9  10  11
    2013-01-04  12  13  14  15
    2013-01-05  16  17  18  19
    2013-01-06  20  21  22  23

    2、根据位置设置loc和iloc

    我们可以利用索引或者标签确定需要修改值的位置。

    >>> df.iloc[2,2] = 1111
    >>> df.loc['20130101','B'] = 2222
    >>> print(df)
                 A     B     C   D
    2013-01-01   0  2222     2   3
    2013-01-02   4     5     6   7
    2013-01-03   8     9  1111  11
    2013-01-04  12    13    14  15
    2013-01-05  16    17    18  19
    2013-01-06  20    21    22  23

    3、根据条件设置

    如果现在的判断条件是这样, 我们想要更改B中的数, 而更改的位置是取决于 A 的. 对于A大于4的位置. 更改B在相应位置上的数为0.

    >>> df.B[df.A>4] = 0
    >>> print(df)
                 A     B     C   D
    2013-01-01   0  2222     2   3
    2013-01-02   4     5     6   7
    2013-01-03   8     0  1111  11
    2013-01-04  12     0    14  15
    2013-01-05  16     0    18  19
    2013-01-06  20     0    22  23

    4、按行或列设置

    如果对整列做批处理, 加上一列 ‘F’, 并将 F 列全改为 NaN, 如下:

    >>> print(df)
                 A     B     C   D   F
    2013-01-01   0  2222     2   3 NaN
    2013-01-02   4     5     6   7 NaN
    2013-01-03   8     0  1111  11 NaN
    2013-01-04  12     0    14  15 NaN
    2013-01-05  16     0    18  19 NaN
    2013-01-06  20     0    22  23 NaN

    5、添加数据

    用上面的方法也可以加上 Series 序列(但是长度必须对齐)。

    >>> df['E'] = pd.Series([1,2,3,4,5,6], index=pd.date_range('20130101',periods=6))
    >>> print(df)
                 A     B     C   D   F  E
    2013-01-01   0  2222     2   3 NaN  1
    2013-01-02   4     5     6   7 NaN  2
    2013-01-03   8     0  1111  11 NaN  3
    2013-01-04  12     0    14  15 NaN  4
    2013-01-05  16     0    18  19 NaN  5
    2013-01-06  20     0    22  23 NaN  6
  • 相关阅读:
    畜栏预定【贪心+小根堆】
    电影【离散化】
    最佳牛栏(前缀和+二分)
    防晒【贪心 + 平衡树】
    货仓选址【中位数】证明
    24个不易混淆的数字和字母,常用于密码或密钥
    win8上的新功能,不知道win7有木有,刚偶然发现的
    通过C#类库绘制正态分布的统计图(通用)
    C#组播消息收发
    使用c#类库绘制柱状图
  • 原文地址:https://www.cnblogs.com/anhoo/p/9383815.html
Copyright © 2011-2022 走看看