Удаление строк в подмножестве столбцов во фрейме данных смешанного типа

Еще один способ взглянуть на это с помощью POSIX ACL, он должен поддерживаться вашей файловой системой, однако вы можете иметь тонкую настройку всех команд в Linux так же, как у вас есть один и тот же элемент управления в Windows (только без более удобный пользовательский интерфейс). link

Еще одна вещь, которую нужно изучить, - PolicyKit .

Вам нужно будет сделать довольно много поискового запроса, чтобы получить все, что работает, это определенно не сила Linux на данный момент.

0
задан aardvark 2 March 2019 в 02:23
поделиться

3 ответа

import pandas as pd 
import numpy as np 

# Sample data
d = np.array([[18, 1, 0, 1.0, 5.0, 0, 1],
                [89, 3, 1, 1.0, 1.0, 1, 1],
                [100, 4, 7, 0.0, 1.0, 1, 0],
                [200, 0, 1, 0.0, 0.0, 1, 0],
                [300, 1, 1, 0.0, 1.0, 1, 1],
                [19, 1, 1, 1.0, 1.0, 6, 1]])

df = pd.DataFrame(data=d, columns = ['Age','Prod1','Prod2', 'Day 4', 'Day 5', 'Day 6', 'Region'])
df = df.drop(df[~df.loc[:, 'Prod1':'Region'].isin([0, 1]).all(axis=1)].index)    
print(df)

должен дать ожидаемый результат:

     Age  Prod1  Prod2  Day 4  Day 5  Day 6  Region
3  200.0    0.0    1.0    0.0    0.0    1.0     0.0
4  300.0    1.0    1.0    0.0    1.0    1.0     1.0


Комментарий к вашему коду: Ваши условия неверны, но это не причина, почему вы получают тот же кадр данных. Это происходит потому, что вы не передаете df.drop(prodindex) переменной, то есть:

# Your code
prodindex = df[ (df.loc['Prod1':'Region'] > 1) & (df.loc['Prod1':'Region'] < 0) ].index
df = df.drop(prodindex)
print(df) 

Empty DataFrame
Columns: [Age, Prod1, Prod2, Day 4, Day 5, Day 6, Region]
Index: []
0
ответ дан Giorgos Myrianthous 2 March 2019 в 02:23
поделиться

Если вы хотите удалить строки, содержащие значения 1 или 0, следующие работы:

df.loc[~df.loc[:, 'Prod1':'Region'].isin([0, 1]).any(axis=1), :]

0
ответ дан hacker315 2 March 2019 в 02:23
поделиться

Это должно работать:

df[df.loc[:, 'Prod1':'Region'].isin([0, 1]).all(axis=1)]
0
ответ дан gmds 2 March 2019 в 02:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: