专栏首页py+seleniumpython dataframe筛选列表的值转为list【常用】

python dataframe筛选列表的值转为list【常用】

  网上方法参差不齐,无注释解释不好秒懂,没有自己想要的,故自己试验一番~

1. 筛选列表中,当b列中为’1’时,所有c的值,然后转为list
2 .筛选列表中,当a列中为'one',b列为'1'时,所有c的值,然后转为list
3 .将a列整列的值,转为list(两种)
4. 筛选列表,当a=‘one’时,取整行所有值,然后转为list

具体看下面代码:

import pandas as pd
from pandas import DataFrame


df = DataFrame([['one', '1', '一'],
                ['one', '1', '一'],
                ['two', '2', '二'],
                ['three', '3', '三'],
                ['four', '1', '四'],
                ['five', '5', '五']],
        columns=['a', 'b', 'c'])

print(df)
"""
out:
       a  b  c
0    one  1  一
1    one  1  一
2    two  2  二
3  three  3  三
4   four  1  四
5   five  5  五
"""

# 筛选列表中,当b列中为’1’时,所有c的值,然后转为list
b_c = df.c[df['b'] == '1'].tolist()
print(b_c)

# out:  ['一', '一', '四']

# 筛选列表中,当a列中为'one',b列为'1'时,所有c的值,然后转为list
a_b_c = df.c[(df['a'] == 'one') & (df['b'] == '1')].tolist()
print(a_b_c)

# out:  ['一', '一']

# 将a列整列的值,转为list(两种)
a_list_1 = df.a.tolist()
a_list_2 = df['a'].tolist()
print(a_list_1, "\n", a_list_2)

"""
out:
['one', 'one', 'two', 'three', 'four', 'five'] 
 ['one', 'one', 'two', 'three', 'four', 'five']
"""

# 筛选列表,当a=‘one’时,取整行所有值,然后转为list
a_line = df[df['a'] == 'two'].values.tolist()
print(a_line)

# out:  [['two', '2', '二']]

 如有错误,请及时指正,谢谢!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python爬取新浪股票数据—绘图【原创分享】

    逆向小白
  • a=re.findall('b',c)报错提示:TypeError:expected string or buffer

    目的:想通过findall选取某个unicode编码的字符串列表(列表里面有元组)

    逆向小白
  • python+selenium 批量执行时出现随机报错问题【已解决】

    出现场景:用discover方法批量执行py文件,出现随机性的报错(有时a.py报错,有时b.py报错...),共同特点:均是打开新窗口后,切换最新窗口,但定位...

    逆向小白
  • one仿真平台学习笔记

    这是交给宁老师的作业。您懂的:) 1.起步篇:http://one-simuator-for-beginners.blogspot.in/2013/08/one...

    kalifa_lau
  • 不上市的华为如果成为全球最大的公司,岂不是打脸资本市场?

    华为从成立到现在慢慢做到了通讯行业的老大,现在5G技术上已经处于领先的地位,已经发展到全球有18万员工,这么个超级大公司竟然还没有上市而且还在茁壮的成长,这也的...

    程序员互动联盟
  • 动物麻醉剂量和途径,你真的清楚吗?

    在日常科研中,我们经常要对实验动物进行麻醉,从而建立各种动物模型,以便于在整体上验证疾病发生机制和药物的作用机制。

    Mark Chen
  • JDK开发环境搭建及环境变量配置

    根据系统版本下载tar.gz文件,服务器一般是64位的 jdk-8u121-linux-x64.tar.gz 、jdk-8u121-linux-i586.ta...

    Javen
  • 如果ARM不再授权,华为还能做出芯片吗?

    现在华为因为近些年技术积累到位,出来了一些技术成果,特别是在通讯领域逐渐坐稳第一把交椅,在别的领域也在攻城略地,现在的华为公司俨然成为了国内科技公司的风向标,但...

    程序员互动联盟
  • RabbitMQ源代码分析系列三:消息存储

    今天分析RabbitMQ消息的持久化,即客户端发送一条持久化的MQ消息后,服务端做了哪些事情。

    心平气和
  • Netty 之传统 BIO、NIO 编程

    系列文章:http://www.jianshu.com/p/594441fb9c9e

    Yano_nankai

扫码关注云+社区

领取腾讯云代金券