1、將某一列滿足條件的資料的所在行提取出來
df_ori = pd.read_excel('f:\ivf\data\data_add_yuejing_time\data_arrange_no_null23.xlsx')
df_new = df_ori[df_ori.iloc[:,-2]>=0.6] #將某一列滿足條件(>=0.6)的資料行提取出來
df_new.to_excel('df_new.xlsx',index=false)
2、新建乙個dataframe,向dataframe物件中新增新的行,如果新增的列名不在dataframe物件中,將會被當作新的列進行新增
data = pd.dataframe(columns=)
a =
print(data)
3、從dataframe中提取想要的某幾列(以下兩種方式都可實現)
(1)
columns_you_want = ['x1', 'x2', 'x3', 'x4', 'x5']
end_column = ['y1']
train_input = df_train[columns_you_want]
train_output = df_train[end_column]
(2)
train_input = df_train.loc[:,df_train.columns!='y1']
train_output = df_train.loc[:,'y1']
4、 將dataframe中的某幾列特徵轉換成one_hot編碼
注意:(1)predix一定要保證包含df中所有除數字之外的列名,比如c列都是數字,在predix就不包括,但a列和b列必填,只填a或b都不行;
(2)dataframe裡面不會對數字列進行one_hot編碼,series裡的數字會按照one-hot進行編碼(dataframe與series之間的關係:如果檢視dataframe的某一列,返回的就是series);
(3)特徵的維度數量會有所增加
5、合併多個dataframe
pd.concat([df_new,bf_new],axis=1)#從列方向上合併,注意列與列之間在行方向上的index必須一致才能合併
pd.concat([df_new,bf_new],axis=0)#從行方向上合併,注意合併的時候會出現index重複的情況,可以在後面加上引數ignore_index=true
6、向原有的dataframe增加新的一列
7、刪除dataframe中的某些列
df.drop(['a','b'],axis=1)
8、根據某列去重
temp=df_ori.drop_duplicates(subset=['基本資訊|p_id','基本資訊|o_id'],keep='first')
9、dataframe型別的資料在資料標準化fit_transform後丟失列名後怎麼回到dataframe Pandas DataFrame常用方法
1 獲取列名 1.1.鍊錶推導式 語法 col for col in df 返回結果 cvr1 cvr2 cvr3 cvr4 結果型別 list 1.2.通過columns屬性 columns屬性返回index,columns.values屬性返回 numpy.ndarray,可通過 tolist ...
Pandas DataFrame 按行構建
當我們從複雜 提取出逐個樣本的特徵時,繼而構成一條樣本並組成訓練或測試集時,比較容易想到的一點就是一行一行地構建dataframe。而pandas.dataframe 容許的輸入有numpy ndarray structured or homogeneous dict,or dataframe這些 ...
如何迭代pandas dataframe的行
from 在對dataframe進行操作時,我們不可避免的需要逐行檢視或運算元據,那麼有什麼高效 快捷的方法呢?import pandas as pd inp df pd.dataframe inp for x in xrange len df.index print df c1 iloc x 這似...