Pandas 新增修改資料 + 資料統計函式
阿新 • • 發佈:2022-03-06
新增修改資料
# 1)新增Series s1 = pd.Series(list(range(4)), name='F') # 2)新增DataFrame的資料 df = df.append({'A':i}, ignore_index=True) # 3)使用concat新增DataFrame資料 pd.concat( [pd.DataFrame([i], columns=['A']) for i in range(5)], ignore_index=True ) # 4)df.apply方法 # 利用函式,新增一列 值為其他列的條件篩選後自定義的值 def get_temperature_type(df): if df['bWendu'] > 0: return '高溫' if df['bWendu'] < 0: # 這裡如果temperature_type為已有列為修改,否則新增 return '低溫' # axis=1,指定索引為columns,新增一列名字為temperature_type new_column = df.loc[:, 'temperature_type'] = df.apply(get_temperature_type, axis=1) df['temperature_type'].value_counts() # 檢視新列計數 # 5)df.assign方法 # 在原有列的基礎上新增列 ,新列的名稱為yWendu_huashi和bWendu_huashi df.assign( yWendu_huashi = lambda df:df['yWendu'] * 9/5 + 32, bWendu_huashi = lambda df:df['bWendu'] * 9/5 + 32 ) # 6)條件選擇分組賦值 # 新增一列並重新利用條件選擇賦值 df['wencha_type'] = '' # 如果成立 認為wencha_type新列為後面的值 df.loc[df['bWendu'] - df['yWendu'] > 0, 'wencha_type'] = '溫差大' # 如果b溫度-y溫度>0,那麼將溫差大複製給wencha_type新列 df.loc[df['bWendu'] - df['yWendu'] <=0, 'wencha_type'] = '溫差正常' df['wencha_type'].value_counts() # 檢視新列數量
資料統計函式
1)彙總類 + 去重 + 計數 # 1.1)取出所有的統計結果 df.describe() # 1.2)平均值 df['bWendu'].mean() # 1.3)標準差 df['bWendu'].std() # 1.4)最大值 df['bWendu'].max() # 1.5)最小值 df['bWendu'].min() # 1.6)去重 df['fengxiang'].unique() # 1.7)計數 df['fengxiang'].value_counts() # 2)相關係數和協方差 """ 相關係數:衡量相似程度,當他們的相關係數為1時,說明兩個變數變化時的正向相似最大,當相似係數為-1時候,說明兩個變數的反向相似程度最大 相關係數矩陣:df.corr() 協方差:衡量同向反向程度,如果協方差為正,說明x,y同向變化,協方差越大說明同向程度越高。如果協方差為負,說明x,y反向運動,協方差越小說明反向程度越高 協方差矩陣:df.cov() """ # 單獨檢視2個列的相關係數和協方差: df['aqi'].corr(df['bWendu']) # # 檢視空氣質量和最高溫度的相關係數 df['aqi'].corr(df['bWendu']) - df['aqi'].corr(df['yWendu']) # 空氣質量和溫差的相關係數