操作符支援dataframe例項。具體是怎麼回事呢?今天番茄加速就來講一下。
先問您一下:您知道 df1 > 4 返回的型別是什麼嗎?
答案: dataframe例項,結果如下,元素取值不難理解。
c1 c2 c3
r1 true true true
r2 false false false
r3 true true false
r4 true true false
既然 操作符支援 dataframe例項,那麼返回的結果您一定想知道:
df1[ df1 > 4 ]
#結果如下:
c1 c2 c3
r1 6.0 9.0 6.0
r2 nan nan nan
r3 8.0 7.0 nan
r4 5.0 6.0 nan
看到結果,可能不用解釋,您也知道怎麼回事了。
下面,引出乙個奇怪的問題,大家可以回去思考。這個操作的readable不是很好,所以覺得此操作很奇怪。
上面講到, 操作符支援dataframe例項,不過,如果我們剝去它的層層外衣,直奔最本質,揪出它後就是乙個 list 例項:
inner = ((df1>4).values).tolist()
inner
#結果,型別是list
[[true, true, true],
[false, false, false],
[true, true, false],
[true, true, false]]
接下來,就是見證奇蹟的時刻:
df1[inner]
#結果 ???
您想到了嗎?
答案:c1 c2 c3
r1 6 9 6
r1 6 9 6
r1 6 9 6
r3 8 7 3
r3 8 7 3
r4 5 6 3
r4 5 6 3
差不多,您也可以解釋為什麼結果是這樣了吧!今天,只想盡量聊透 操作符訪問資料這個知識點,當然還有更多的訪問資料的函式,比如iloc, loc等。
oracle支援的SQL操作符
根據優先順序排序 一 算術操作符 select sal,comm,sal nvl comm,0 from emp img 二 連線操作符 1 union 合併兩個操作結果,去掉重複值 select sal,deptno from emp union select sal,deptno from em...
c語言操作符 位操作符 移位操作符
1 按位操作符 1.1 按位 與 雙目運算子 僅當兩個運算元都為1時,結果為1,否則為0。參與運算的數以補碼方式出現。例 9 5 1 0000 1001 9的補碼 0000 0101 5的補碼 0000 0001 1的補碼 應用 a 通常將某些位清零或保留某些位。例如 將a的高八位清零,保留低八位,...
linq操作符 限定操作符
限定操作符運算返回乙個boolean值,該值指示序列中是否有一些元素滿足條件或者是否所有元素都滿足條件。一 all操作符 all方法用來確定是否序列中的所有元素都滿足條件。看下面的例子 1 using system 2using system.collections.generic 3using s...