1,Pandas
pandas中最重要的概念就是dataframe, 可用于矩陣計算
--pd.read_csv() :CSV 文件讀入DataFrame
----sep :分隔符
----ignore_index : 序列行
pd.concat([pd.read_csv(fn, sep='\u0001')for fn in latest_lst], ignore_index=True)
--dataframe.to_csv() : DataFrame 寫入 CSV 文件
----csv_buffer
with BytesIO() as csv_buffer:
with gzip.GzipFile(mode='wb', fileobj=csv_buffer)as gz_file:
dataframe.to_csv(TextIOWrapper(gz_file, 'utf-8'), **kwargs)
data = csv_buffer.getvalue()
--dataframe.dropna(subset=['RoomType'], inplace=True) :丟棄空行旁仿,inplace啰挪,直接改變原dataframe
--bcom_data = bcom_data.query('RoomID != "0"'):篩選符合條件的行
--expe_data = expe_data[['EID', 'Site', 'RoomID', 'RoomType']]:獲取原dataframe中特定列异逐,雙[ ]
--column_names_bcom = ['BookingID', 'Site', 'RoomID']
--bcom_data.columns = column_names_bcom :重命名列名
--bcom_data = pd.merge(bcom_data, bcom_smoking, how='left', left_on='BookingID', right_on='BookingID') :dataframe合并
--bcom_data['RoomSmoking'] = bcom_data['RoomSmoking'].apply(utils.transform) :對每column應(yīng)用變換鸠补,支持lambda表達式
--my_data['CombinedView'] = my_data.apply(lambda row: ViewList(row['View'], row['ViewFromAmenities']), axis=1)
--del bcom_data : 清除變量
--bcom_data.copy() :復(fù)制一個
--關(guān)于axis=1和axis=0的問題蜕便,如下圖:
2, Numpy科學(xué)計算庫
numpy.genfromtxt() : 從文本文件加載數(shù)據(jù),并按指定的方式處理缺少的值
--delimiter: 用于分隔值的字符串疙渣∏夜欤可以是str, int, or sequence。默認(rèn)為任何連續(xù)的空格
--numpy.array: 創(chuàng)建一個向量或矩陣(多維數(shù)組)?
? ?---np.array([[4, 3, 5], [1, 2, 1]])