Удалить все ячейки после ячейки

Здравствуйте, у меня есть следующий DataFrame df:

A           B         C        D         E        F 
apple       0        red    green      blue      8
orange      2        red    blue       white     10
apple       2        red    green      blue      8
orange      0        red    20       purple     10

Я хотел бы изменить все ячейки, следующие за определенной ячейкой, на пустые строки.

Я пробовал следующий код, и мне было интересно, есть ли более эффективный способ сделать это.

for i in range(len(df['B']):
    if df['B'].iloc[i] == 0:
        df['C'].iloc[i] = ""
        df['D'].iloc[i] = ""
        df['E'].iloc[i] = ""
        df['F'].iloc[i] = ""
 A           B         C        D         E        F 
apple       0        
orange      2        red    blue       white     10
apple       2        red    green      blue      8
orange      0        

Спасибо

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
3
0
95
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Просто mask здесь.

df.loc[:, 'C':].mask(df['B'].eq(0), '')

     C      D      E   F
0                       
1  red   blue  white  10
2  red  green   blue   8
3                       
Ответ принят как подходящий

Пытаться:

df.loc[df['B']==0,'C': ] = ''

Отпечатки:

        A  B    C      D      E   F
0   apple  0                       
1  orange  2  red   blue  white  10
2   apple  2  red  green   blue   8
3  orange  0            

Другие вопросы по теме