python - 如何使用python在不影响相应行的情况下用空白交换行中的重复项?

标签 python pandas duplicates

假设我们有以下excel数据,

Column1 | Column2 | Column3 | .... Column n
  A     |   10    |    a
  A     |   10    |    b
  A     |   10    |    c
  B     |   15    |    d
  B     |   15    |    e
  B     |   15    |    f
  C     |   20    |    g
  C     |   20    |    h
  .         
  .
  .
我想修改为,
Column1 | Column2 | Column3 | .... Column n
  A     |   10    |    a
        |         |    b
        |         |    c
  B     |   15    |    d
        |         |    e
        |         |    f
  C     |   20    |    g
        |         |    h
  .         
  .
  .
我尝试使用 drop_duplicates(来自 Pandas )技术,但它也会删除其他行。
我可以手动完成任务,但我试图找到一种通过使用 python 实现上述目标的方法,有什么想法吗?

最佳答案

您可以使用 maskduplicated :

cols = ['Column1', 'Column2']
df[cols] = df[cols].mask(df.duplicated(cols), '')
df
输出:
  Column1 Column2 Column3
0       A      10       a
1                       b
2                       c
3       B      15       d
4                       e
5                       f
6       C      20       g
7                       h

关于python - 如何使用python在不影响相应行的情况下用空白交换行中的重复项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62664384/

相关文章:

python - 应用于数组列表时 Numpy max 变慢

python - 读取文件的多种方式?

python - 在 Flask 中使用请求参数获取可变 URL

python - 在分类列上过滤 Dask 数据框?

r - 在R中串联重复的数据框值

python - 官方 gVim Windows 二进制文件是否预编译为可与 Python 3 一起使用?

Python Pandas : remove entries based on the number of occurrences

python - DataFrame eval 在表达式中使用函数名称

javascript - 在 javascript 中搜索对象数组中的重复字符串

sql-server - 删除 SQL Server 2016 中的部分重复行