Python Pandas-在以下单元格为空白的列中填写文本值

叔叔

我有一个数据框,我正尝试填写“日期”列(即文本)中的值,如下所示:

数据帧是使用生成dfs=pd.read_html(pageUrl,infer_types=False)然后df=dfs[0]

            Date     Time datetime  Year
    0               None     None  2007
    1     May 1     0:58     None  2007
    2               1:00     None  2007
    3               1:30     None  2007
    4               1:45     None  2007
    5               3:45     None  2007
    6               4:45     None  2007
    7               6:30     None  2007
    8               7:15     None  2007
    9               7:45     None  2007

df.dtypes 表演

    Date        object
    Time        object
    datetime    object
    Year         int64
    dtype: object

首先,我尝试逐行填充。如果当前的“日期”为空,则尝试向后移一行以获取上一个值:

    def fillDate(r):
        if r['Date']=="":
            p=r.shift(-1)
            r['Date']=p['Date']
        return r

然后

    df.apply(fillDate,axis=1)

这会在“日期”列中填充“时间”。

因此,然后我尝试使用axis = 0(每列)应用并修改函数,使其仅将其应用于“日期”列(我看不到如何仅将其应用于一列)

    def fillDate(r):
        if r.name=='Date':
            if r['Date']=="":
                p=r.shift(-1)
                r['Date']=p['Date']
        return r

然后

    df.apply(fillDate,axis=0)

给出错误

    KeyError: ('Date', u'occurred at index Date')

目的是在“日期”为空白时,使用上一个单元格中的值填充“日期”中的值。

我怎样才能做到这一点?

杰夫
In [16]: df = pd.read_fwf(StringIO(data),widths=[5,12,8,8,6],header=0,names=['idx','date','time','datetime','year'])

# simulate what the OP actually has (though this doesn't happen upon read in)

In [30]: df['date'] = df['date'].fillna('')

In [31]: df
Out[31]: 
   idx   date  time datetime  year
0    0         None     None  2007
1    1  May 1  0:58     None  2007
2    2         1:00     None  2007
3    3         1:30     None  2007
4    4         1:45     None  2007
5    5         3:45     None  2007
6    6         4:45     None  2007
7    7         6:30     None  2007
8    8         7:15     None  2007
9    9         7:45     None  2007

In [32]: df.loc[df.date=='','date'] = np.nan

In [33]: df
Out[33]: 
   idx   date  time datetime  year
0    0    NaN  None     None  2007
1    1  May 1  0:58     None  2007
2    2    NaN  1:00     None  2007
3    3    NaN  1:30     None  2007
4    4    NaN  1:45     None  2007
5    5    NaN  3:45     None  2007
6    6    NaN  4:45     None  2007
7    7    NaN  6:30     None  2007
8    8    NaN  7:15     None  2007
9    9    NaN  7:45     None  2007

In [34]: df['date']  = df['date'].ffill()

In [35]: df
Out[35]: 
   idx   date  time datetime  year
0    0    NaN  None     None  2007
1    1  May 1  0:58     None  2007
2    2  May 1  1:00     None  2007
3    3  May 1  1:30     None  2007
4    4  May 1  1:45     None  2007
5    5  May 1  3:45     None  2007
6    6  May 1  4:45     None  2007
7    7  May 1  6:30     None  2007
8    8  May 1  7:15     None  2007
9    9  May 1  7:45     None  2007

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python Pandas-在以下单元格为空白的列中填写文本值

来自分类Dev

填充前几列Pandas python中的空白单元格

来自分类Dev

Python Pandas在单元格中对齐文本

来自分类Dev

python pandas:用字典中的值替换单元格

来自分类Dev

Python Pandas:在单元格中查找最大值

来自分类Dev

Python Pandas通过其他列中的条件替换更改的单元格值

来自分类Dev

在python pandas中为int列保留空白值

来自分类Dev

Python Pandas-根据单元格值查找列值

来自分类Dev

在 Python 中查找 Pandas 的每个单元格中的最大值/最小值

来自分类Dev

Python Pandas打印出每个单元格的值

来自分类Dev

Python Pandas Dataframe 单元格值拆分

来自分类Dev

使用 Pandas (Python) 更改单元格值

来自分类Dev

Python Pandas在groupby中的单元格中按给定值移动

来自分类Dev

Python Pandas:根据单元格中的值重复列名

来自分类Dev

Python Pandas 比较 DataFrame 单元格中的日期时间值

来自分类Dev

在python-pandas的数据帧的特定列中查找重复单元格的快速方法?

来自分类Dev

如果使用Pandas列中的单元格为null

来自分类Dev

如何通过 Python3.7 中的 Pandas 数据框验证 Excel 工作表中的特定单元格值

来自分类Dev

Python XlsxWriter条件格式以单个单元格中的值为条件的多个单元格

来自分类Dev

Python Pandas-如果部分文本匹配模式,则清空整个单元格

来自分类Dev

使用pandas模块将excel单元格值分配给变量[Python 3.8,Linux]

来自分类Dev

Python Pandas在具有重复值的单元格上添加条件

来自分类Dev

在 Pandas 数据框中查找任何单元格值 >= x 并返回单元格值、列标题、行和相邻单元格值

来自分类Dev

使用Pandas编辑特定的单元格[Python]

来自分类Dev

python-pandas合并单元格/数据框内容

来自分类Dev

Python Pandas:如何重塑数据框,将特定单元格更改为新列

来自分类Dev

Pandas Python:将输出写入CSV中的特定单元格

来自分类Dev

将numpy数组存储在pandas数据框的多个单元格中(Python)

来自分类Dev

Python Pandas-突出显示数据框中的单元格

Related 相关文章

  1. 1

    Python Pandas-在以下单元格为空白的列中填写文本值

  2. 2

    填充前几列Pandas python中的空白单元格

  3. 3

    Python Pandas在单元格中对齐文本

  4. 4

    python pandas:用字典中的值替换单元格

  5. 5

    Python Pandas:在单元格中查找最大值

  6. 6

    Python Pandas通过其他列中的条件替换更改的单元格值

  7. 7

    在python pandas中为int列保留空白值

  8. 8

    Python Pandas-根据单元格值查找列值

  9. 9

    在 Python 中查找 Pandas 的每个单元格中的最大值/最小值

  10. 10

    Python Pandas打印出每个单元格的值

  11. 11

    Python Pandas Dataframe 单元格值拆分

  12. 12

    使用 Pandas (Python) 更改单元格值

  13. 13

    Python Pandas在groupby中的单元格中按给定值移动

  14. 14

    Python Pandas:根据单元格中的值重复列名

  15. 15

    Python Pandas 比较 DataFrame 单元格中的日期时间值

  16. 16

    在python-pandas的数据帧的特定列中查找重复单元格的快速方法?

  17. 17

    如果使用Pandas列中的单元格为null

  18. 18

    如何通过 Python3.7 中的 Pandas 数据框验证 Excel 工作表中的特定单元格值

  19. 19

    Python XlsxWriter条件格式以单个单元格中的值为条件的多个单元格

  20. 20

    Python Pandas-如果部分文本匹配模式,则清空整个单元格

  21. 21

    使用pandas模块将excel单元格值分配给变量[Python 3.8,Linux]

  22. 22

    Python Pandas在具有重复值的单元格上添加条件

  23. 23

    在 Pandas 数据框中查找任何单元格值 >= x 并返回单元格值、列标题、行和相邻单元格值

  24. 24

    使用Pandas编辑特定的单元格[Python]

  25. 25

    python-pandas合并单元格/数据框内容

  26. 26

    Python Pandas:如何重塑数据框,将特定单元格更改为新列

  27. 27

    Pandas Python:将输出写入CSV中的特定单元格

  28. 28

    将numpy数组存储在pandas数据框的多个单元格中(Python)

  29. 29

    Python Pandas-突出显示数据框中的单元格

热门标签

归档