Pandas中ix和iloc有什麼區別?

時間 2021-05-10 02:41:12

1樓:泰初君

Is .ix() always better than .loc() and .

iloc() since it is faster and supports integer and label access?

2樓:SunnyCareer

loc可以使用文字標籤,如loc["name"];iloc使用序號,如iloc[1]。對於預設序號做行索引的情況,兩者是通用的。

3樓:那小誰

它們都是對dataframe實現選取行列操作的loc是基於column name選取特定行iloc是基於行、列的位置選取特定行

df.loc[行index,[column name]]df.iloc[行index,列index]at是基於指定行的index及column name快速定位出某個元素(return 乙個元素)

df.at[行index,column name]ix是loc和iloc的混合體

4樓:深藍加菲

ix / loc 可以通過行號和行標籤進行索引,比如 df.loc['a'] , df.loc[1], df.ix['a'] , df.ix[1]

而iloc只能通過行號索引 , df.iloc[0] 是對的, 而df.iloc['a'] 是錯誤的

loc 和 ix 大部分時候行為都差不多, 但是當假如某個行的索引標籤就是乙個 INT 比如 1 的時候, loc 優先將 df.loc[1] 理解為行標籤為 1 的索引, 而 df.ix[1] 優先將其理解為行號為 1 的索引(就是第二行)

為了避免不小心犯錯誤, 建議:

1.當用行號索引的時候, 盡量用 iloc 來進行索引;

2. 而用標籤索引的時候用 loc ,

3. ix 就別用了

5樓:正經的啟哥哥

ix可以通過行號和行標籤進行索引,而iloc只能通過行號索引,即ix可以看做是loc和iloc的綜合。

print df.iloc['a']

'''''''

TypeError: cannot do label indexing on with these indexers [a] of

'''df.iloc[0:]

'''''''

a b c

d 1 2 3

e 4 5 6

ix——結合前兩種的混合索引通過行號索引

df.ix[1]

'''''''

a 4

b 5

c 6

'''通過行標籤索引

df.ix['e']

'''''''

a 4

b 5

c 6'''

在期權中,payoff和profit有什麼區別?

一葉障日 Profit net payoff payoff the premium accumulated with interest 很簡單。payoff是你的收入,profit是你的利潤。差別在哪呢?差乙個成本。payoff減去成本就是profit,成本就是premium,即期權費。 payof...

佛法中「煩惱」和「習氣」有何分別?

琅琊閣主 題主自答 提這個問題是因為 習氣 是佛法裡面的乙個多義詞,在不同上下文和經論裡面有稍微不同的意思,很容易被混淆。習氣有以下幾個意思 1.廣義來說,語言 思想 行為在心識中留下的潛能。就好像經常重複做一件事,或用一種模式思考,會變成慣性。很多人喜歡用 煩惱習氣 這個表達,用的就是這個廣義的定...

c 中out和ref有區別麼?

靈魂對撞機 看樣子你沒有學過c語言,玩過指標的很容易明白ref out代表的啥。區別真的大,用out還是ref決定了方法和呼叫時的寫法,核心還是不變,指標 打玻璃 out 你必須先初始化,才能讀取他的值。他告訴編譯器,這個變數會在function內被賦值。ref 在進入這個方法之前就要被初始化,並且...