DataFrame
numaralı sütuna Sales
numaralı sütunu kullanıyorum.Pandalar DataFrame'i sütun değerine göre bölünmüş
Sales
değerini temel alarak 2'ye nasıl bölebilirim?
İlk DataFrame
'Sales' >= s
DataFrame
numaralı sütuna Sales
numaralı sütunu kullanıyorum.Pandalar DataFrame'i sütun değerine göre bölünmüş
Sales
değerini temel alarak 2'ye nasıl bölebilirim?
İlk DataFrame
'Sales' >= s
ile 'Sales' < s
ikincisi olan verilere sahip olur Sen boolean indexing
kullanabilirsiniz:
df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]})
print (df)
A Sales
0 3 10
1 4 20
2 7 30
3 6 40
4 1 50
s = 30
df1 = df[df['Sales'] >= s]
print (df1)
A Sales
2 7 30
3 6 40
4 1 50
df2 = df[df['Sales'] < s]
print (df2)
A Sales
0 3 10
1 4 20
Ayrıca olası invert mask
olduğunu ~
tarafından:
mask = df['Sales'] >= s
df1 = df[mask]
df2 = df[~mask]
print (df1)
A Sales
2 7 30
3 6 40
4 1 50
print (df2)
A Sales
0 3 10
1 4 20
print (mask)
0 False
1 False
2 True
3 True
4 True
Name: Sales, dtype: bool
print (~mask)
0 True
1 True
2 False
3 False
4 False
Name: Sales, dtype: bool
iki kez dataframe kesmeye gerek kalmadan bunu yapmanın bir yolu var mı size
In [1047]: df1, df2 = [x for _, x in df.groupby(df['Sales'] < 30)]
In [1048]: df1
Out[1048]:
A Sales
2 7 30
3 6 40
4 1 50
In [1049]: df2
Out[1049]:
A Sales
0 3 10
1 4 20
gibi iki dataframes bölünmüş olabilir
groupby
kullanarak? Çünkü bu şekilde df1 oluşturmak için indeksi açmalıyız ve df2 için aynı durum için başka bir zaman. Ama her iki veri çerçevesini tek bir satırda nasıl elde edeceğimi anlayamıyorum .. – ysearkaMaalesef sadece bu çözüm olduğunu düşünüyorum - bkz. [Yemek kitabı] (http://pandas.pydata.org/pandas-docs/stable/cookbook .html # bölme). – jezrael