如何在数据框中为列查找具有相同值(字符串)的两个连续行并在它们之间添加更多行?

塔希纳克

如何在数据框中为一列查找具有相同值(字符串)的连续两行并在它们之间添加更多行?数据帧具有时间序列索引。

例如:如果 A 列具有相同值的连续 2 行的索引是下午 5:30 和下午 6:00,我想在两行之间以 1 分钟的增量添加更多行,即。下午 5:01、下午 5:02.....下午 5:59。

约西·哈默

这是一种方法:

import pandas as pd
import numpy as np

# say this is your df:
df = pd.DataFrame(index=pd.date_range(periods=6, 
                                      start='12:00', end='12:30'))
df['A'] = [1,1,2,3,3,4]
print(df)

#                         A
#2019-05-09 12:00:00      1
#2019-05-09 12:06:00      1
#2019-05-09 12:12:00      2
#2019-05-09 12:18:00      3
#2019-05-09 12:24:00      3
#2019-05-09 12:30:00      4

# find positions with same value
ends_idx = np.arange(df.shape[0])[
    (df['A'].diff() == 0).values]

print(ends_idx)
# [1 4]

# create index with additional time stamps
old_index = df.index
new_index = sorted(np.unique(np.concatenate([
    pd.date_range(start=old_index[i-1], 
                  end=old_index[i], freq='min').values
    for i in ends_idx
] + [old_index.values])))

# create a new dataframe
new_df = pd.DataFrame(index=new_index)

# assign a default value
new_df['A'] = np.nan

# assign values from old dataframe
new_df.loc[old_index, 'A'] = df['A']
print(new_df)

#                       A
#2019-05-09 12:00:00  1.0
#2019-05-09 12:01:00  NaN
#2019-05-09 12:02:00  NaN
#2019-05-09 12:03:00  NaN
#2019-05-09 12:04:00  NaN
#2019-05-09 12:05:00  NaN
#2019-05-09 12:06:00  1.0
#2019-05-09 12:12:00  2.0
#2019-05-09 12:18:00  3.0
#2019-05-09 12:19:00  NaN
#2019-05-09 12:20:00  NaN
#2019-05-09 12:21:00  NaN
#2019-05-09 12:22:00  NaN
#2019-05-09 12:23:00  NaN
#2019-05-09 12:24:00  3.0
#2019-05-09 12:30:00  4.0

编辑:对于 A 中的字符串值,您可以将我们找到位置的部分替换为:

# find positions with same value
n = df.shape[0]
# place holders:
ends_idx = np.arange(n) 
same = np.array([False] * n)
# compare values explicitly
same[1:] = df['A'][1:].values == df['A'][:-1].values 
ends_idx = ends_idx[same]

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在数据帧的列中为具有特定字符串的两行之间的行分配值?

来自分类Dev

熊猫如何在数据框的两个行值之间添加其他值

来自分类Dev

如何比较两列并使用python计算一个数据框中它们之间有多少个相同项目/字符串?

来自分类Dev

如何在连续的行中查找相同的字符串,然后打印连续包含它们的所有行

来自分类Dev

如何在连续的行中查找相同的字符串,然后打印连续包含它们的所有行

来自分类Dev

如何在Python数据框中添加具有字典的字符串值的列

来自分类Dev

如何在数据框中添加基于数据长度的值作为字符串的列

来自分类Dev

如何从具有空值的数据框列中提取两个子字符串之间的所有字符串?

来自分类Dev

如何在具有两个条件的熊猫数据框中添加新列?

来自分类Dev

如何在具有两列相同的两个不同数据集中查找单个值(基于条件)

来自分类Dev

如何对第1列中具有相同值的两个或更多csv文件的行求和?

来自分类Dev

如何对第1列中具有相同值的两个或更多csv文件的行求和?

来自分类Dev

熊猫在具有数字约束的数据框中的两个行值之间添加其他值

来自分类Dev

合并两个具有共同值的熊猫数据框,它们在一个数据框中显示为列,而在另一行中显示为行

来自分类Dev

如何在JavaScript中的两个相同字符之间获取子字符串?

来自分类Dev

比较Pandas中的两个Excel文件,并在两个列中返回具有相同值的行

来自分类Dev

在数据框中合并两个连续的行

来自分类Dev

如何在数据框中按列查找最大字符串长度

来自分类Dev

python中具有相同值的两个不同的字符串对象

来自分类Dev

如何查找具有包含两个给定字符串的href值的<a>元素

来自分类Dev

如何在字符串的两个相同字符之间获取字符串-在vb.net中

来自分类常见问题

如何基于具有连续相同值的列事件删除数据框中的行

来自分类Dev

如何基于具有连续相同值的列事件删除数据框中的行

来自分类Dev

在两个文件的列中查找具有相同值的行

来自分类Dev

查找相似的字符串并在一个数据框中协调它们

来自分类Dev

Python连接两个数据框以查找相同的行值,在相应的行中具有不同的值

来自分类Dev

如何在多行和多列的不同数据框中找到两个值之间的差异?

来自分类Dev

查找两个熊猫数据框之间的部分字符串匹配的最快方法

来自分类Dev

提取两个相同字符串之间的行?

Related 相关文章

  1. 1

    如何在数据帧的列中为具有特定字符串的两行之间的行分配值?

  2. 2

    熊猫如何在数据框的两个行值之间添加其他值

  3. 3

    如何比较两列并使用python计算一个数据框中它们之间有多少个相同项目/字符串?

  4. 4

    如何在连续的行中查找相同的字符串,然后打印连续包含它们的所有行

  5. 5

    如何在连续的行中查找相同的字符串,然后打印连续包含它们的所有行

  6. 6

    如何在Python数据框中添加具有字典的字符串值的列

  7. 7

    如何在数据框中添加基于数据长度的值作为字符串的列

  8. 8

    如何从具有空值的数据框列中提取两个子字符串之间的所有字符串?

  9. 9

    如何在具有两个条件的熊猫数据框中添加新列?

  10. 10

    如何在具有两列相同的两个不同数据集中查找单个值(基于条件)

  11. 11

    如何对第1列中具有相同值的两个或更多csv文件的行求和?

  12. 12

    如何对第1列中具有相同值的两个或更多csv文件的行求和?

  13. 13

    熊猫在具有数字约束的数据框中的两个行值之间添加其他值

  14. 14

    合并两个具有共同值的熊猫数据框,它们在一个数据框中显示为列,而在另一行中显示为行

  15. 15

    如何在JavaScript中的两个相同字符之间获取子字符串?

  16. 16

    比较Pandas中的两个Excel文件,并在两个列中返回具有相同值的行

  17. 17

    在数据框中合并两个连续的行

  18. 18

    如何在数据框中按列查找最大字符串长度

  19. 19

    python中具有相同值的两个不同的字符串对象

  20. 20

    如何查找具有包含两个给定字符串的href值的<a>元素

  21. 21

    如何在字符串的两个相同字符之间获取字符串-在vb.net中

  22. 22

    如何基于具有连续相同值的列事件删除数据框中的行

  23. 23

    如何基于具有连续相同值的列事件删除数据框中的行

  24. 24

    在两个文件的列中查找具有相同值的行

  25. 25

    查找相似的字符串并在一个数据框中协调它们

  26. 26

    Python连接两个数据框以查找相同的行值,在相应的行中具有不同的值

  27. 27

    如何在多行和多列的不同数据框中找到两个值之间的差异?

  28. 28

    查找两个熊猫数据框之间的部分字符串匹配的最快方法

  29. 29

    提取两个相同字符串之间的行?

热门标签

归档