Python 在数据帧中分隔特定值

Python 在数据帧中分隔特定值,python,pandas,dataframe,indexing,Python,Pandas,Dataframe,Indexing,我有一个很大的数据集。我试着用熊猫数据框阅读它。我想从其中一列中分离一些值。假设列的名称为“A”,则值的范围为90到300。我想分离270到280之间的任何值。我确实尝试了下面的代码,但它是错误的 %matplotlib inline import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns df = pd.read_csv('....csv') df2 = df[ 2

我有一个很大的数据集。我试着用熊猫数据框阅读它。我想从其中一列中分离一些值。假设列的名称为“A”,则值的范围为90到300。我想分离270到280之间的任何值。我确实尝试了下面的代码,但它是错误的

%matplotlib inline
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.read_csv('....csv')
df2 = df[ 270 < df['A'] < 280]
%matplotlib内联
将numpy作为np导入
作为pd进口熊猫
将matplotlib.pyplot作为plt导入
导入seaborn作为sns
df=pd.read_csv(“……csv”)
df2=df[270
与以下部件一起使用:

或:

df2=df[(df['A']>270)和(df['A']<280)]
打印(df2)
A.
181  271
182  272
183  273
184  274
185  275
186  276
187  277
188  278
189  279
您也可以使用以下方法:

df2=df.query(“270
演示:

[40]中的
df=pd.DataFrame({'A':范围(90300)})
在[41]中:df.query(“270
使用
numpy
加快速度并重建新的数据帧。
假设我们使用的是jezrael的样本数据

a=df.a.values
m=(a>270)和(a<280)
pd.DataFrame(a[m],df.index[m],df.columns)
A.
181  271
182  272
183  273
184  274
185  275
186  276
187  277
188  278
189  279

其中哪一部分是numpy?@pshep123-如果调用
a=df.a.values
获取numpy数组,然后
a[m]
df.index[m]
用于过滤数组(列a的值数组和索引值数组)-在numpy中也可以使用相同的布尔索引。Ahhh,因此,通过使用一维数组(
),默认情况下使用的是numpy。明白了,谢谢。我发现这个错误了!UndefinedVariableError:名称“A”不是defined@user8034918,您确定您有一个名为
a
的专栏吗?如果我的或其他答案有用,请不要忘记。谢谢
df = pd.DataFrame({'A':range(90,300)})

df2 = df[df['A'].between(270,280, inclusive=False)]
print (df2)
      A
181  271
182  272
183  273
184  274
185  275
186  276
187  277
188  278
189  279
df2 = df[(df['A'] > 270) & (df['A'] < 280)]
print (df2)
      A
181  271
182  272
183  273
184  274
185  275
186  276
187  277
188  278
189  279
df2 = df.query("270 < A < 280")
In [40]: df = pd.DataFrame({'A':range(90,300)})

In [41]: df.query("270 < A < 280")
Out[41]:
       A
181  271
182  272
183  273
184  274
185  275
186  276
187  277
188  278
189  279
a = df.A.values
m = (a > 270) & (a < 280) 
pd.DataFrame(a[m], df.index[m], df.columns)

       A
181  271
182  272
183  273
184  274
185  275
186  276
187  277
188  278
189  279