рдПрдХрддреНрд░реАрдХрд░рдг рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рд╕рдмрд╕реЗ рдЖрдо рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпрд╛рдВ рд╣рдореЗрдВ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд╕рдореВрд╣ рдмрдирд╛рдиреЗ рдФрд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдмреНрдпрд╛рдЬ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИрдВ (рдХреЙрд▓рдо, рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ)ред рдпрд╣ рд▓реЗрдЦ рдкрд╛рдВрдбрд╛ рдореЗрдВ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдЧрд╛редрдореЗрд░реА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдореЗрдВ, рдореИрдВ рдЕрдЬрдЧрд░ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХрдо рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрдХреНрд╕рд░ рдЗрд╕ рднрд╛рд╖рд╛ рдХреЗ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╢рдХреНрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирддрд╛ рд╣реВрдВ, рдЦрд╛рд╕рдХрд░ рдЬрдм рдпрд╣ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдпрд╣рд╛рдВ рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рдирд╛рдВрддрд░ рдСрдкрд░реЗрд╢рди рдХрд░реВрдВрдЧрд╛ рдФрд░ рдХреБрдЫ рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛ред рдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ - рдЗрд░рд╛рдЗрдЬ рдлрд┐рд╢рд░ редрдкрд╣рд▓реА рдмрд╛рдд рдЬреЛ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрддреА рд╣реИ, рд╡рд╣ рдЗрд╕ рдкреМрдзреЗ рдХреА рдкреНрд░рдЬрд╛рддрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рднреА рдЖрдИрд░рд┐рд╕ рдорд╛рдкрджрдВрдбреЛрдВ рдФрд░ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо, рдиреНрдпреВрдирддрдо рдпрд╛ рдФрд╕рдд рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдкрдВрдбреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдЬрдЧрд░ рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:import pandas as pd
df = pd.read_csv('iris.csv', delimiter = ',')
print(df.groupby('variety').max()[['sepalLength']].to_markdown())
рдкрд░рд┐рдгрд╛рдо:| рд╡рд┐рд╡рд┐рдзрддрд╛ | sepal.length ||: ----------- | ---------------: || рд╕реЗрдЯреЛрд╕рд╛ | 5.8 || рд╡рд░реНрд╕рд┐рдХрд▓рд░ | 7 || рд╡рд░реНрдЬрд┐рдирд┐рдХрд╛ | 7.9 |рдпрд╛ рдРрд╕рд╛:import pandas as pd
df = pd.read_csv('iris.csv', delimiter = ',')
print(df.groupby('variety').sepalLength.agg(
maxSepalLength = 'max',
minSepalLength = 'min',
).to_markdown())
рдкрд░рд┐рдгрд╛рдо:| рд╡рд┐рд╡рд┐рдзрддрд╛ | maxSepalLength | minSepalLength ||: ----------- | -----------------: - ----------------- : || рд╕реЗрдЯреЛрд╕рд╛ | 5.8 | 4.3 || рд╡рд░реНрд╕рд┐рдХрд▓рд░ | 7 | 4.9 || рд╡рд░реНрдЬрд┐рдирд┐рдХрд╛ | 7.9 | 4.9 |рдпрд╛ рд▓рдВрдмреЛрджрд░ рднрд╛рд╡реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:import pandas as pd
df = pd.read_csv('iris.csv', delimiter = ',')
print(df.groupby('variety').sepalLength.agg([
lambda x: x.max(),
lambda x: x.min()
]).to_markdown())
рдкрд░рд┐рдгрд╛рдо:| рд╡рд┐рд╡рд┐рдзрддрд╛ | <lambda_0> | <lambda_1> ||: ----------- | -------------: | -------------: || рд╕реЗрдЯреЛрд╕рд╛ | 5.8 | 4.3 || рд╡рд░реНрд╕рд┐рдХрд▓рд░ | 7 | 4.9 || рд╡рд░реНрдЬрд┐рдирд┐рдХрд╛ | 7.9 | 4.9 |рдбрд╛рдЯрд╛рдлреНрд░реЗрдо рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдлрдВрдХреНрд╢рдиto_markdown()
рдЖрдкрдХреЛ рд╕рд╛рдорд╛рдиреНрдп (рдХрдВрд╕реЛрд▓) рдлрд╝реЙрд░реНрдо рдореЗрдВ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ (DataFrame) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИредT-SQL рдкрд░, рдпрд╣ рдСрдкрд░реЗрд╢рди рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:select i.Variety, max(i.SepalLength) as maxSepalLength
from Iris i
group by i.Variety
рдкрд░рд┐рдгрд╛рдо:рд╕реЗрдЯреЛрд╕рд╛ 5.8 рд╡рд░реНрд╕реАрдХреЛрд▓рд░7.0рд╡рд░реНрдЬрд┐рдирд┐рдХрд╛ 7.9рд▓реЗрдХрд┐рди рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЕрдм рд╣рдо рдЖрдИрд░рд┐рд╕ рдХреЗ рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рдФрд░ рдиреНрдпреВрдирддрдо (рдпрджрд┐ рдЖрдкрдХреЛ рдФрд╕рдд рдкрд╕рдВрдж рд╣реИ) рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреМрдзреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИредselect
i.Variety
,max(i.SepalLength) as maxSepalLength
,min(i.SepalLength) as minSepalLength
,max(i.SepalWidth) as maxSepalWidth
,min(i.SepalWidth) as minSepalWidth
,max(i.PetalLength) as maxPetalLength
,min(i.PetalLength) as mibPetalLength
,max(i.PetalWidth) as maxPetalWidth
,min(i.PetalWidth) as minPetalWidth
from Iris i
group by i.Variety
рдкрд░рд┐рдгрд╛рдо:рд╕реЗрдЯреЛрд╕рд╛ 5.8 4.3 4.4 2.3 1.9 1.0 1.0 0.1 0.1рд╡рд░реНрд╕рд┐рдХрд▓рд░ 7.0 4.9 3.4 2.0 3.0 1.8 1.0рд╡рд░реНрдЬрд┐рдирд┐рдпрд╛ 7.9 4.9 3.8 6.9 4.5 2.5 1.4рдкрдВрдбреЛрдВ рдореЗрдВ, рд╕рдореВрд╣ рдПрдХрддреНрд░реАрдХрд░рдг рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗрд╡рд▓ рдЬреБрд▓рд╛рдИ 18, 2019 рдХреЗ 0.25.0 рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреА (рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛) ;) рдФрд░ рдХрдИ рднрд┐рдиреНрдирддрд╛рдПрдВ рд╣реИрдВ, рдЙрди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:import pandas as pd
df = pd.read_csv('iris.csv', delimiter = ',')
df.groupby('variety').agg(
maxSepalLength = pd.NamedAgg(column = 'sepalLength', aggfunc = 'max'),
minSepalLength = pd.NamedAgg(column = 'sepalLength', aggfunc = 'min'),
maxSepalWidth = pd.NamedAgg(column = 'sepalWidth', aggfunc = 'max'),
minSepalWidth = pd.NamedAgg(column = 'sepalWidth', aggfunc = 'min'),
maxPetalLength = pd.NamedAgg(column = 'petalLength', aggfunc = 'max'),
minPetalLength = pd.NamedAgg(column = 'petalLength', aggfunc = 'min'),
maxPetalWidth = pd.NamedAgg(column = 'petalWidth', aggfunc = 'max'),
minPetalWidth = pd.NamedAgg(column = 'petalWidth', aggfunc = 'min'),
)
рдкрд░рд┐рдгрд╛рдо:рд╕реЗрдЯреЛрд╕рд╛ 5.8 4.3 4.4 2.3 1.9 1.0 0.6 0.1рд╡рд░реНрд╕рд┐рдХрд▓рд░ 7.0 4.9 3.4 2.0 5.1 1.8 1.8рд╡рд░реНрдЬрд┐рдирд┐рдХрд╛ 7.9 4.9 3.8 2.2 6.9 4.5 2.5 1.4рдлрд╝рдВрдХреНрд╢рдиDataFrame.agg(self, func, axis=0, *args, **kwargs)
рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдЕрдХреНрд╖ рдкрд░ рдХрдИ рдкрд░рд┐рдЪрд╛рд▓рдиреЛрдВ рдХреЗ рдПрдХрддреНрд░реАрдХрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди ** kwargs (рдирд╛рдо рдХрд╛ рддрд░реНрдХ, рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рд╣рдмреНрд░ рдкрд░ рд▓реЗрдЦ рджреЗрдЦреЗрдВ ) рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рдХреЙрд▓рдо рд╣реИ рдЬрд┐рд╕ рдкрд░ рдСрдкрд░реЗрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдХрд▓ рдЙрджреНрдзрд░рдг рдореЗрдВ рдПрдХрддреНрд░реАрдХрд░рдг рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдоред рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХрд╛рдлреА рд╕реНрд╡реИрдЪреНрдЫрд┐рдХ рд▓рдЧрддреА рд╣реИред рдЖрдЧреЗ рдмрдврд╝реЛредрд▓реИрдореНрдмреНрдбрд╛ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╣реА рд╕рдорд╛рдзрд╛рди рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдФрд░ рд╕рд░рд▓ рд▓рдЧрддрд╛ рд╣реИ:import pandas as pd
df = pd.read_csv('iris.csv', delimiter = ',')
df.groupby('variety').agg([
lambda x: x.max(),
lambda x: x.min()
])
рдкрд░рд┐рдгрд╛рдо:рд╕реЗрдЯреЛрд╕рд╛ 5.8 4.3 4.4 2.3 2.3 1.0 1.0 0.1 0.1рд╡рд░реНрд╕рд┐рдХрд▓рд░ 7.0 4.9 3.4 2.0 3.0 1.8 1.0рд╡рд░реНрдЬрд┐рдирд┐рдпрд╛ 7.9 4.9 3.8 6.9 4.5 2.5 1.4рдореИрдВ рдЕрдХреНрд╕рд░ рдмрд╣реБрдд рдХрдо рд▓рд┐рдЦрд┐рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирддрд╛ рд╣реВрдВ рдЬрдм рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╕рдордп рдкрд╛рдпрдердиред рдпрд╣рд╛рдВ, рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рдХреЛрдИ рднреА рдЗрд╕рд╕реЗ рд╕рд╣рдордд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рднрд╛рд╖рд╛рдИ рдЙрдкрдХрд░рдгреЛрдВ рдЬреИрд╕реЗ рдПрд╕рдХреНрдпреВрдПрд▓ рдпрд╛ рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕реНрдкрд╖реНрдЯрддрд╛ рдФрд░ рдЕрдиреБрдХреНрд░рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреЛ рдЧрдпрд╛ рд╣реИ (рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░рд╛рдп)редрд▓реЗрдЦ рд╕реЗ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдФрд░ рдХреЛрдб рдпрд╣рд╛рдБ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред0.25.0 рдореЗрдВ рдирдпрд╛ рдХреНрдпрд╛ рд╣реИ (рдЬреБрд▓рд╛рдИ 18, 2019)рдкрд╛рдВрдбрд╛