第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用pandas.DataFrame中的復(fù)雜條件進行選擇

使用pandas.DataFrame中的復(fù)雜條件進行選擇

慕斯王 2019-07-23 16:51:53
使用pandas.DataFrame中的復(fù)雜條件進行選擇例如,我有簡單的DF:import pandas as pdfrom random import randint df = pd.DataFrame({'A': [randint(1, 9) for x in xrange(10)],                    'B': [randint(1, 9)*10 for x in xrange(10)],                    'C': [randint(1, 9)*100 for x in xrange(10)]})我可以使用Pandas的方法和習(xí)語從“A”中選擇“B”的相應(yīng)值大于50,“C” - 不等于900的值嗎?
查看完整描述

3 回答

?
qq_笑_17

TA貢獻1818條經(jīng)驗 獲得超7個贊

另一種解決方案是使用查詢方法:


import pandas as pd


from random import randint

df = pd.DataFrame({'A': [randint(1, 9) for x in xrange(10)],

                   'B': [randint(1, 9) * 10 for x in xrange(10)],

                   'C': [randint(1, 9) * 100 for x in xrange(10)]})

print df


   A   B    C

0  7  20  300

1  7  80  700

2  4  90  100

3  4  30  900

4  7  80  200

5  7  60  800

6  3  80  900

7  9  40  100

8  6  40  100

9  3  10  600


print df.query('B > 50 and C != 900')


   A   B    C

1  7  80  700

2  4  90  100

4  7  80  200

5  7  60  800

現(xiàn)在,如果要更改A列中的返回值,可以保存其索引:


my_query_index = df.query('B > 50 & C != 900').index

....并用它.iloc來改變它們,即:


df.iloc[my_query_index, 0] = 5000


print df


      A   B    C

0     7  20  300

1  5000  80  700

2  5000  90  100

3     4  30  900

4  5000  80  200

5  5000  60  800

6     3  80  900

7     9  40  100

8     6  40  100

9     3  10  600


查看完整回答
反對 回復(fù) 2019-07-23
  • 3 回答
  • 0 關(guān)注
  • 1421 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號