pandas-excel

import pandas as pd
import numpy as np
df = pd.DataFrame({'total_bill': [16.99, 10.34, 23.68, 23.68, 24.59],
                   'tip': [1.01, 1.66, 3.50, 3.31, 3.61],
                   'sex': ['Female', 'Male', 'Male', 'Male', 'Female']})

對(duì)于DataFrame,我們可以看到其固有屬性

# data type of columns
df.dtypes
# indexes,行索引
df.index
# return pandas.Index,列名稱(label)
df.columns
# each row, return array[array]
df.values
# a tuple representing the dimensionality of df
df.shape

select:
SQL中的select是根據(jù)列的名稱來選仍途濉;Pandas則更為靈活伯诬,不但可根據(jù)列名稱選取晚唇,還可以根據(jù)列所在的position選取。相關(guān)函數(shù)如下:
loc盗似,基于列l(wèi)abel哩陕,可選取特定行(根據(jù)行index);

df.loc[1:3, ['total_bill', 'tip']]
df.loc[1:3, 'tip': 'total_bill']

有更為簡潔的行/列選取方式:

df[1: 3]
df[['total_bill', 'tip']]
# df[1:2, ['total_bill', 'tip']]  # TypeError: unhashable type

where:

# and
df[(df['sex'] == 'Female') & (df['total_bill'] > 20)]
# or
df[(df['sex'] == 'Female') | (df['total_bill'] > 20)]
# in
df[df['total_bill'].isin([21.01, 23.68, 24.59])]
# not
df[-(df['sex'] == 'Male')]
df[-df['total_bill'].isin([21.01, 23.68, 24.59])]
# string function
df = df[(-df['app'].isin(sys_app)) & (-df.app.str.contains('^微信\d+$'))]

join:
Pandas中join的實(shí)現(xiàn)也有兩種:

# 1.
df.join(df2, how='left'...)
# 2. 
pd.merge(df1, df2, how='left', left_on='app', right_on='app')

第一種方法是按DataFrame的index進(jìn)行join的赫舒,而第二種方法才是按on指定的列做join悍及。Pandas滿足left、right接癌、inner心赶、full outer四種join方式。

order:
Pandas中支持多列order缺猛,并可以調(diào)整不同列的升序/降序缨叫,有更高的排序自由度:

df.sort_values(['total_bill', 'tip'], ascending=[False, True])

replace:
replace函數(shù)提供對(duì)dataframe全局修改,亦可通過where條件進(jìn)行過濾修改(搭配loc):

# overall replace
df.replace(to_replace='Female', value='Sansa', inplace=True)

# dict replace
df.replace({'sex': {'Female': 'Sansa', 'Male': 'Leone'}}, inplace=True)

# replace on where condition 
df.loc[df.sex == 'Male', 'sex'] = 'Leone'

distinct:

df.drop_duplicates(subset=['sex'], keep='first', inplace=True)
#subset枯夜,為選定的列做distinct弯汰,默認(rèn)為所有列艰山;
#keep湖雹,值選項(xiàng){'first', 'last', False},保留重復(fù)元素中的第一個(gè)曙搬、最后一個(gè)摔吏,或全部刪除鸽嫂;
#inplace ,默認(rèn)為False征讲,返回一個(gè)新的dataframe据某;若為True,則返回去重后的原dataframe

group:
group一般會(huì)配合合計(jì)函數(shù)(Aggregate functions)使用诗箍,比如:count癣籽、avg等。Pandas對(duì)合計(jì)函數(shù)的支持有限滤祖,有count和size函數(shù)實(shí)現(xiàn)SQL的count:

df.groupby('sex').size()
df.groupby('sex').count()
df.groupby('sex')['tip'].count()

sql:

select sex, max(tip), sum(total_bill) as total
from tips_tb
group by sex;

實(shí)現(xiàn)在agg()中指定dict:

df.groupby('sex').agg({'tip': np.max, 'total_bill': np.sum})

# count(distinct **)
df.groupby('tip').agg({'sex': pd.Series.nunique})

as:

df.rename(columns={'total_bill': 'total', 'tip': 'pit', 'sex': 'xes'}, inplace=True)

作者:Treant

出處:http://www.cnblogs.com/en-heng/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末筷狼,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子匠童,更是在濱河造成了極大的恐慌埂材,老刑警劉巖,帶你破解...
    沈念sama閱讀 223,002評(píng)論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件汤求,死亡現(xiàn)場離奇詭異俏险,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)扬绪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門竖独,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人挤牛,你說我怎么就攤上這事预鬓。” “怎么了赊颠?”我有些...
    開封第一講書人閱讀 169,787評(píng)論 0 365
  • 文/不壞的土叔 我叫張陵格二,是天一觀的道長。 經(jīng)常有香客問我竣蹦,道長顶猜,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,237評(píng)論 1 300
  • 正文 為了忘掉前任痘括,我火速辦了婚禮长窄,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘纲菌。我一直安慰自己挠日,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,237評(píng)論 6 398
  • 文/花漫 我一把揭開白布翰舌。 她就那樣靜靜地躺著嚣潜,像睡著了一般。 火紅的嫁衣襯著肌膚如雪椅贱。 梳的紋絲不亂的頭發(fā)上懂算,一...
    開封第一講書人閱讀 52,821評(píng)論 1 314
  • 那天只冻,我揣著相機(jī)與錄音,去河邊找鬼计技。 笑死喜德,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的垮媒。 我是一名探鬼主播舍悯,決...
    沈念sama閱讀 41,236評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼睡雇!你這毒婦竟也來了贱呐?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,196評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤入桂,失蹤者是張志新(化名)和其女友劉穎奄薇,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體抗愁,經(jīng)...
    沈念sama閱讀 46,716評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡馁蒂,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,794評(píng)論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蜘腌。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片沫屡。...
    茶點(diǎn)故事閱讀 40,928評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖撮珠,靈堂內(nèi)的尸體忽然破棺而出沮脖,到底是詐尸還是另有隱情,我是刑警寧澤芯急,帶...
    沈念sama閱讀 36,583評(píng)論 5 351
  • 正文 年R本政府宣布勺届,位于F島的核電站,受9級(jí)特大地震影響娶耍,放射性物質(zhì)發(fā)生泄漏免姿。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,264評(píng)論 3 336
  • 文/蒙蒙 一榕酒、第九天 我趴在偏房一處隱蔽的房頂上張望胚膊。 院中可真熱鬧,春花似錦想鹰、人聲如沸紊婉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽喻犁。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間株汉,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評(píng)論 1 274
  • 我被黑心中介騙來泰國打工歌殃, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留乔妈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,378評(píng)論 3 379
  • 正文 我出身青樓氓皱,卻偏偏與公主長得像路召,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子波材,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,937評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容