Python 当特定列达到给定值时拆分熊猫框架

Python 当特定列达到给定值时拆分熊猫框架,python,pandas,dataframe,Python,Pandas,Dataframe,我想为数据帧的两个特定部分使用两种不同的仓位大小df.cut()。我认为最简单的方法是读取我的数据帧并将其拆分为两个,这样我就可以在两个独立的数据帧中使用df.cut() 我知道我可以使用df.head(),但我必须不断更改数据帧,它们的大小并不总是相同的。例如,使用以下数据帧 A B 1 0.1 0.423655 2 0.2 0.645894 3 0.3 0.4375

我想为数据帧的两个特定部分使用两种不同的仓位大小
df.cut()
。我认为最简单的方法是读取我的数据帧并将其拆分为两个,这样我就可以在两个独立的数据帧中使用
df.cut()

我知道我可以使用df.head(),但我必须不断更改数据帧,它们的大小并不总是相同的。例如,使用以下数据帧

               A     B
          1    0.1   0.423655
          2    0.2   0.645894
          3    0.3   0.437587
          4    0.31  0.891773
          5    0.4   0.1773
          6    0.43  0.91773
          7    0.5   0.891773
我想要两个数据帧,其值大于或等于0.4,小于0.4

所以我会选择df2:

                 A     B
          1    0.1   0.423655
          2    0.2   0.645894
          3    0.3   0.437587
          4    0.31  0.891773
和df3:

                 A      B
           1    0.4   0.1773
           2    0.43  0.91773
           3    0.5   0.891773

同样,df.head(4)或df.tail(3)也不起作用。

我添加了一些虚构的数据作为示例:

data = {'A': [1,2,3,4,5,6,7,8], 'B': [5,8,9,10,11,12,13,14]}
df = pd.DataFrame(data)
df1 = df[df.A > 4]
df2 = df[df.A <13]

print(df1)
print(df2)
df2=df[df[“A”]<0.4]
df3=df[df[“A”]>=0.4]
这应该可以:

import pandas as pd 
data = {'A': [0.1,0.2,0.1,0.2,5,6,7,8], 'B': [5,0.2,4,8,11,9,10,14]}
df = pd.DataFrame(data)

df2 = df[df.A >= 0.4]
print(df2) 

#    A     B
#4  5.0  11.0
#5  6.0   9.0
#6  7.0  10.0
#7  8.0  14.0

df3 = df[df.A < 0.4]
print(df3) 


#     A    B
#0  0.1  5.0
#1  0.2  0.2
#2  0.1  4.0
#3  0.2  8.0


将熊猫作为pd导入
数据={'A':[0.1,0.2,0.1,0.2,5,6,7,8],'B':[5,0.2,4,8,11,9,10,14]}
df=pd.DataFrame(数据)
df2=df[df.A>=0.4]
打印(df2)
#A B
#4  5.0  11.0
#5  6.0   9.0
#6  7.0  10.0
#7  8.0  14.0
df3=df[df.A<0.4]
打印(df3)
#A B
#0  0.1  5.0
#1  0.2  0.2
#2  0.1  4.0
#3  0.2  8.0

我刚刚得到一个带有false和true的df,就像这样:
1 true 2 true 3 true 4 true 5 false 6 false
我不知道如何正确地在注释中写入数据帧。但我没有得到我想得到的结果,正如我在问题中所举例说明的那样。不幸的是,它没有得到。我事先不知道
df['B']
的值。只有
df['A']
我已经更正了我的代码。我认为,如果你正在寻找两个独立的数据帧,现在应该可以了。这是否回答了你的问题ziulfer?
df2 = df[df["A"] < 0.4]
df3 = df[df["A"] >= 0.4]
import pandas as pd 
data = {'A': [0.1,0.2,0.1,0.2,5,6,7,8], 'B': [5,0.2,4,8,11,9,10,14]}
df = pd.DataFrame(data)

df2 = df[df.A >= 0.4]
print(df2) 

#    A     B
#4  5.0  11.0
#5  6.0   9.0
#6  7.0  10.0
#7  8.0  14.0

df3 = df[df.A < 0.4]
print(df3) 


#     A    B
#0  0.1  5.0
#1  0.2  0.2
#2  0.1  4.0
#3  0.2  8.0