שינוי נתונים
שיעור 11 מתוך 19 בקורס ניתוח נתונים עם Pandas של Coddy.
כדי לדרוס את הנתונים של תא, עמודה או שורה ספציפיים, אפשר להקצות להם ערך חדש:
df["existing_col"] = new_value # שנה עמודה
df.loc[index] = new_value # שנה שורה
df.loc[index, "existing_col"] = new_value # שנה תאכדי לעדכן את ערך העמודה של שורות שעומדות בתנאי מסוים, השתמש באותו תנאי שלמדנו בשיעורים הקודמים עם המתודה .loc:
df.loc[df['col'] > 5, 'existing_col'] = new_value
df.loc[(df['col'] <= 5) & (df['col'] > 2), 'existing_col'] = new_value
חשוב להשתמש במילת המפתח
locכשמשנים שורות קיימות. לעיתים קרובות, כשמשנים מסגרת נתונים ללאloc, עובדים עם עותק במקום עם הנתונים המקוריים . לדוגמה:df[(df['col'] <= 5) & (df['col'] > 2)]["existing_col"] = new_valueכאן, התנאי מחזיר עותק של מסגרת הנתונים במקום את הנתונים המקוריים.
אתגר
קלקובץ ה-CSV stats.csv מכיל מידע על נתונים סטטיסטיים.
הנה 5 השורות הראשונות של הקובץ:
ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPE- שנה את הערך של כל התאים (למעט התאים בעמודות
IS_VALIDו-UTILIZATION), שבהםIS_VALIDשווה ל-1ו-UTILIZATIONקטן מ-0.4, ל-MODIFIED.
שמור את התוצאה במשתנה df.
נסו בעצמכם
# pandas as pd כבר יובא
df = pd.read_csv("./stats.csv")
for column in df.columns:
if column not in ["IS_VALID", "UTILIZATION"]:
df[column] = df[column].astype(object)
# כתבו את הקוד שלכם למטה
כל השיעורים ביחידה ניתוח נתונים עם Pandas
3מניפולציה של נתונים עם Pandas
החזרת התוצאה המבוקשתסינון נתוניםהוספה ומחיקהשינוי נתוניםשינוי מחרוזותשינויים מותאמים אישיתתרגלו בעצמכם: קומפיילר Python אונליין