Loading
Loading
Pandas is the most powerful library for tabular data analysis in Python. Every AI project starts with loading and cleaning data.
| Object | Description | When to use | |--------|------------|-------------| | Series | Single column with index | One-dimensional data | | DataFrame | 2D table | Any dataset |
import pandas as pd
scores = pd.Series([85, 92, 78, 96, 88],
index=["Ahmed", "Sara", "Ali", "Nour", "Omar"])
print(scores.mean()) # 87.8
data = {"name": ["Ahmed", "Sara"], "score": [85, 92]}
df = pd.DataFrame(data)
df = pd.read_csv("data.csv")
df = pd.read_json("data.json")
df = pd.read_excel("report.xlsx")
print(df.head(3)) # first 3 rows
print(df.shape) # (num_rows, num_cols)
print(df.dtypes) # each column type
print(df.info()) # comprehensive summary
print(df.describe()) # statistics for numeric columns
ages = df["age"]
subset = df[["name", "salary"]]
ai_team = df[df["department"] == "AI"]
senior = df[df["age"] > 30]
top = df[(df["salary"] > 10000) & (df["dept"] == "ML")]
result = df.query("age > 28 and salary > 9000")
df["monthly"] = df["salary"] / 12
df["level"] = df["age"].apply(lambda a: "senior" if a > 30 else "junior")
df.rename(columns={"salary": "annual"}, inplace=True)
df.drop(columns=["monthly"], inplace=True)
dept_avg = df.groupby("department")["salary"].mean()
summary = df.groupby("department").agg({
"salary": ["mean", "max"],
"age": "mean",
})
print(df.isnull().sum())
df_clean = df.dropna()
df["salary"].fillna(df["salary"].median(), inplace=True)
# ─── تحليل بيانات موظفي قسم AI بـ Pandas ───
import pandas as pd, io
raw = (
"name,age,role,salary,experience,department
"
"Ahmed,28,Data Scientist,12000,3,AI
"
"Sara,32,ML Engineer,18000,7,ML
"
"Ali,25,AI Intern,6500,1,AI
"
"Nour,35,Cloud Architect,22000,10,Cloud
"
"Omar,29,NLP Engineer,14000,4,AI
"
"Layla,27,Data Analyst,9000,2,ML
"
"Karim,38,MLOps Engineer,20000,12,ML
"
"Hana,24,AI Intern,6000,1,AI
"
"Tarek,31,Data Scientist,13500,6,Cloud
"
"Mona,26,CV Engineer,11000,3,AI"
)
df = pd.read_csv(io.StringIO(raw))
print("=" * 50)
print(" بيانات فريق AI")
print("=" * 50)
print(f"
عدد الموظفين : {len(df)}")
df["salary_monthly"] = df["salary"] / 12
df["level"] = df["experience"].apply(
lambda e: "مبتدئ" if e <= 2 else "متوسط" if e <= 6 else "خبير"
)
print("
--- إحصاء الرواتب ---")
print(df["salary"].describe().round(0))
print("
--- متوسط الراتب لكل قسم ---")
dept = df.groupby("department")["salary"].agg(["mean","max","count"])
dept.columns = ["المتوسط", "الأعلى", "العدد"]
print(dept.round(0))
print("
--- الموظفون بأعلى راتب في كل قسم ---")
top = df.loc[df.groupby("department")["salary"].idxmax(),
["name","department","salary","role"]]
print(top.to_string(index=False))
pass_rate = (df["salary"] > 10000).mean() * 100
print(f"
📊 نسبة ذوي الرواتب المرتفعة: {pass_rate:.0f}%")