اعمال توابع به داده ها در Pandas
Pandas به شما امکان می دهد توابع را به طور مستقیم بر روی داده های خود در DataFrame یا Series اعمال کنید. این امر تجزیه و تحلیل و دستکاری داده ها را آسان و کارآمد می کند.
۱. اعمال توابع به Series:
- توابع داخلی Pandas:
Python
import pandas as pd
s = pd.Series([۱, ۲, ۳, ۴, ۵])
# میانگین
mean = s.mean()
print(mean)
# انحراف معیار
std = s.std()
print(std)
# مجذور هر عنصر
squared = s.apply(lambda x: x ** ۲)
print(squared)
- توابع سفارشی:
Python
def my_function(x):
return x ** ۳
cubed = s.apply(my_function)
print(cubed)
۲. اعمال توابع به DataFrame:
- اعمال به هر ستون:
Python
import pandas as pd
df = pd.DataFrame({"Name": ["Alice", "Bob", "Charlie"], "Age": [۳۰, ۲۵, ۲۲], "Country": ["USA", "Canada", "USA"]})
# میانگین هر ستون
means = df.mean(axis=۰)
print(means)
# انحراف معیار هر ستون
stds = df.std(axis=۰)
print(stds)
# تبدیل هر عنصر در ستون "Age" به مجذور آن
df["Age_Squared"] = df["Age"].apply(lambda x: x ** ۲)
print(df)
- اعمال به هر سطر:
Python
# اعمال تابع سفارشی به هر سطر برای محاسبه مجموع مقادیر
def my_function(row):
return row.sum()
result = df.apply(my_function, axis=۱)
print(result)
- اعمال به زیرمجموعه ها:
Python
# اعمال تابع به ستون "Age" برای سطرهایی که سن آنها بیشتر از ۲۵ سال است
filtered_df = df[df["Age"] > ۲۵]
squared_ages = filtered_df["Age"].apply(lambda x: x ** ۲)
print(squared_ages)
نکات:
- می توانید از توابع پانداس مانند
map()
,apply()
,agg()
,transform()
وlambda
برای اعمال تابه ها به داده ها استفاده کنید. - می توانید از توابع داخلی پانداس یا توابع سفارشی خود برای انجام عملیات به داده ها استفاده کنید.
- می توانید توابع را به ستون ها، سطرها یا زیرمجموعه های خاص DataFrame اعمال کنید.