根据其他数据框值创建一列

勒布
import pandas as pd
import io
import numpy as np
import datetime

data = """
    date          id
    2015-10-31    50230
    2015-10-31    48646
    2015-10-31    48748
    2015-10-31    46992
    2015-11-01    46491
    2015-11-01    45347
    2015-11-01    45681
    2015-11-01    46430
    """

df = pd.read_csv(io.StringIO(data), delimiter='\s+', index_col=False, parse_dates = ['date'])

df2 = pd.DataFrame(index=df.index)

df2['Check'] = np.where(datetime.datetime.strftime(df['date'],'%B')=='October',0,1)

我有正在使用的这个示例。df2['Check']是在做什么,如果df['date'] == 'October'我分配0,否则分配1。

np.where在其他条件下也可以正常工作,但strftime不喜欢导致该错误的系列:

Traceback (most recent call last):
  File "C:/Users/Leb/Desktop/Python/test2.py", line 22, in <module>
    df2['Check'] = np.where(datetime.datetime.strftime(df['date'],'%B')=='October',0,1)
TypeError: descriptor 'strftime' requires a 'datetime.date' object but received a 'Series'

如果我循环,那么我的实际数据将花费很长时间,大约为1M。我如何有效地做到这一点?

df2['Check'] 应该看起来像这样:

  Check
0     0
1     0
2     0
3     0
4     1
5     1
6     1
7     1
如何

使用对象month属性,这是一个稍微简单的版本datetime如果等于10,则将true / false值映射到所需的0/1对:

df2['Check']=df.date.apply(lambda x: x.month==10).map({True:0,False:1})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据其他列的输入在数据框中创建一列

来自分类Dev

根据Pandas数据框中的其他三列更改一列的值

来自分类Dev

根据pyspark数据框中的其他列的值聚合一列

来自分类Dev

根据Pandas数据框中的其他三列更改一列的值

来自分类Dev

根据其他数据框中的列值在熊猫数据框中创建列

来自分类Dev

根据数据框的其他列创建一个新的pandas数据框列

来自分类Dev

根据其他列向熊猫数据框添加一列

来自分类Dev

根据其他列行中的过滤值,在pandas数据框中创建一个新列

来自分类Dev

根据其他列中的某些值创建另一列

来自分类Dev

Pandas - 根据其他 2 列的值创建一列

来自分类Dev

根据其他数据类型的另一列设置列的默认值

来自分类Dev

根据其他列值生成一列

来自分类Dev

根据其他列中的值在python 3(pandas)数据框中创建新列

来自分类Dev

根据熊猫数据框中其他列的条件和值创建新列

来自分类Dev

根据其他分类值添加一列因子

来自分类Dev

创建数据框,其中列是其他数据框中的唯一值

来自分类Dev

根据pandas数据框中的其他列创建一个聚合列

来自分类Dev

根据现有数据框中的其他列创建一个新列

来自分类Dev

根据其他列的值创建新的数据框,同时按ID分组

来自分类Dev

根据其他2个数据框中的值创建新列

来自分类Dev

根据其他列在python pandas数据框中创建子列表的最大值

来自分类Dev

根据另一列中不同行中的值创建数据框或小标题

来自分类Dev

根据其他两个数据框创建一个额外的列

来自分类Dev

根据条件在熊猫数据框中创建一列

来自分类Dev

根据匹配值从其他数据框中复制列

来自分类Dev

根据共享索引将一列添加到其他数据框中的所有列

来自分类Dev

在pandas数据框中添加一列,该列是根据其他列的条件得出的另一列的平均值

来自分类Dev

如何从一列中检索与数据框中其他列的最大值对应的值

来自分类Dev

根据另一列具有输入数据框的值替换一列的值

Related 相关文章

  1. 1

    根据其他列的输入在数据框中创建一列

  2. 2

    根据Pandas数据框中的其他三列更改一列的值

  3. 3

    根据pyspark数据框中的其他列的值聚合一列

  4. 4

    根据Pandas数据框中的其他三列更改一列的值

  5. 5

    根据其他数据框中的列值在熊猫数据框中创建列

  6. 6

    根据数据框的其他列创建一个新的pandas数据框列

  7. 7

    根据其他列向熊猫数据框添加一列

  8. 8

    根据其他列行中的过滤值,在pandas数据框中创建一个新列

  9. 9

    根据其他列中的某些值创建另一列

  10. 10

    Pandas - 根据其他 2 列的值创建一列

  11. 11

    根据其他数据类型的另一列设置列的默认值

  12. 12

    根据其他列值生成一列

  13. 13

    根据其他列中的值在python 3(pandas)数据框中创建新列

  14. 14

    根据熊猫数据框中其他列的条件和值创建新列

  15. 15

    根据其他分类值添加一列因子

  16. 16

    创建数据框,其中列是其他数据框中的唯一值

  17. 17

    根据pandas数据框中的其他列创建一个聚合列

  18. 18

    根据现有数据框中的其他列创建一个新列

  19. 19

    根据其他列的值创建新的数据框,同时按ID分组

  20. 20

    根据其他2个数据框中的值创建新列

  21. 21

    根据其他列在python pandas数据框中创建子列表的最大值

  22. 22

    根据另一列中不同行中的值创建数据框或小标题

  23. 23

    根据其他两个数据框创建一个额外的列

  24. 24

    根据条件在熊猫数据框中创建一列

  25. 25

    根据匹配值从其他数据框中复制列

  26. 26

    根据共享索引将一列添加到其他数据框中的所有列

  27. 27

    在pandas数据框中添加一列,该列是根据其他列的条件得出的另一列的平均值

  28. 28

    如何从一列中检索与数据框中其他列的最大值对应的值

  29. 29

    根据另一列具有输入数据框的值替换一列的值

热门标签

归档