我想知道-选择该列后,如何忽略该列中不必要/不必要的值?例如,假设我有一个10x2 df
:
import pandas as pd
data = [['jamie', 30], ['cersei', 30], ['tyrion', 25], ['tywin', 56], ['robb', 18], ['jon', 18], ['arya', 9], ['sansa', 14], ['bran', 7], ['nedd', 42]]
df = pd.DataFrame(data, columns = ['Name', 'Age'])
print(df)
Name Age
0 jamie 30
1 cersei 30
2 tyrion 25
3 tywin 56
4 robb 18
5 jon 18
6 arya 9
7 sansa 14
8 bran 7
9 nedd 42
如果我想忽略'Name'
列中的某个值,例如jamie
,该怎么办?或'Age'
列,例如任何> 18
?
您还将如何在Pandas groupby
命令中进行此操作?还是忽略plot
之前不需要的值?
如果我有一个10x4 dataframe
并且只想查看这两列,我将键入一个groupby命令:groupby(['Name', 'Age'])
。
但是如果我不想在jamie
列中包含Name
值,我将如何编写此命令?
答案 0 :(得分:0)
对于“年龄”,只需使用loc过滤
df_01 = df.loc[df['Age'] <= 18]
df_01输出
Name Age
4 robb 18
5 jon 18
6 arya 9
7 sansa 14
8 bran 7
至于使用“ jamie”这个名字,类似的方法...
df_02 = df.loc[df['Name'] != 'jamie']
df_02.head
Name Age
1 cersei 30
2 tyrion 25
3 tywin 56
4 robb 18
5 jon 18
6 arya 9
7 sansa 14
8 bran 7
9 nedd 42
希望这会很有用
答案 1 :(得分:0)
在代码后添加代码,您将得到答案:
print(df[df['Name']!='jamie'])
print(df[df['Age']>=18])
这样,我们可以在数据框中应用任何条件。
答案 2 :(得分:0)
您要过滤数据。
import pandas as pd
data = [['jamie', 30], ['cersei', 30], ['tyrion', 25], ['tywin', 56], ['robb', 18], ['jon', 18], ['arya', 9], ['sansa', 14], ['bran', 7], ['nedd', 42]]
df = pd.DataFrame(data, columns = ['Name', 'Age'])
这样的过滤器
df = df[df.Age>18]
仅返回Age大于18的数据。
要过滤名称,请尝试此操作
df = df[df.Name!='jamie']
对于上述每个示例,您可以创建一个新的数据框df_new或类似的数据。上面我通过删除这些条目来修改df。