[问题] pandas一次删除多行

楼主: oo855050 (阿伟)   2019-05-17 14:54:04
板上各位好
我最近想要用python做一些资料处理
目前的问题是
比如我的DataFrame长下面这样
0 1 2
1 a a a
2 b b b
3 c c c
4 d d d
5 e e e
如果我想要删除index为2~4的row
我的程式码应该如何撰写呢
因为在网络上查到的都是指定index编号来删除
但目前我要删除的row可能是连续的1000多列
所以用指定index来删除可能不太适合
感谢板上各位的帮忙>_<
作者: charlie11438 (煞气a查理)   2019-05-17 15:20:00
https://i.imgur.com/AdZIzx9.jpg不知道这样子是不是你要的 如果是连续 应该可以指定range来解
作者: TuCH (谬客)   2019-05-17 15:21:00
df = df.loc[~df[2:5].index].copy()
作者: charlie11438 (煞气a查理)   2019-05-17 15:21:00
作者: TuCH (谬客)   2019-05-17 15:25:00
错了 df = df.loc[~df.index.isin(df[2:5].index)].copy()
楼主: oo855050 (阿伟)   2019-05-17 15:42:00
char大感谢你喔 用你的方式可行^_^另外想问一下 如果我想把第2行的2~4个row全部改成某一个字串有什么比较快的方式吗 我本来用for循环里面用df.iloc[i,2]='文字'的方式加进去 但因为资料量太大导致运算变超级慢Q_Q
作者: lemon651 (小明)   2019-05-17 15:53:00
iloc的行数给范围就行了吧
楼主: oo855050 (阿伟)   2019-05-17 16:09:00
lem大感谢你的回复不过实际上要如何执行呢 刚接触python还不是很确切了解指令的使用方式
作者: charlie11438 (煞气a查理)   2019-05-17 16:38:00
DataFrame.iloc[0:100,:]='str'这样是将0~99列的值全部改为一值https://reurl.cc/6eq7O
作者: TitanEric (泰坦)   2019-05-17 18:06:00
大大们都好猛 手机打扣我不行
作者: HenryLiKing (HenryLiKing)   2019-05-17 19:18:00
手机写扣的 真的很虐心欸
作者: charlie11438 (煞气a查理)   2019-05-17 19:53:00
哈哈 用手机写扣眼睛会烧 不过习惯就好XD
作者: alan23273850   2019-05-17 20:41:00
推用手机 猛
楼主: oo855050 (阿伟)   2019-05-17 22:37:00
真的是太感谢大大们了(>人<;)
作者: dogppatrick (没梗)   2019-05-30 05:15:00
比较无脑就转np.array 取或删除都方便

Links booklink

Contact Us: admin [ a t ] ucptt.com