首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如果找到某些值,则突出显示python大熊猫的数据

如果找到某些值,则突出显示python大熊猫的数据
EN

Stack Overflow用户
提问于 2020-05-06 05:22:22
回答 2查看 559关注 0票数 0

它来自“Pandas”第7章中的最后一个例子,使用flight.csv数据集。目的是为每一家航空公司和原产机场的组合寻找最长的延迟条纹。我自己做了些小小的修改。

代码语言:javascript
运行
AI代码解释
复制
def max_delay_streak(df):
  df = df.reset_index(drop=True)
  s = 1- df['ON_TIME']
  s1 = s.cumsum()
  streak = s.mul(s1).diff().where(lambda x: x < 0).ffill().add(s1, fill_value =0)
  df['streak'] = streak
  last_idx = streak.idxmax()
  max_streak = streak.max()

  # my slight modification here to accommodate delay streak equals 0
  if max_streak == 0:
      first_idx = 0
  else:
     first_idx = last_idx - max_streak + 1

  df_return = df.loc[[first_idx, last_idx],['MONTH','DAY']]
  df_return['streak'] = max_streak  
  df_return.index = ['first','last']
  df_return.index.name = 'streak_row'

  # search and operate zero streak

  # my adjustment to find index where there is no delay streak
  # df_return[df_return['streak'] == 0].index
  # gets the MultiIndex([('EV', 'PHX', 'first'), ('EV', 'PHX',  'last')],
  #      names=['AIRLINE', 'ORG_AIR', 'streak_row'])
  no_streak = df_return[df_return['streak'] == 0].index
  # get the data from respective index and return month/day into '-'
  df_return.loc[no_streak,['MONTH','DAY']] = '-'
  return df_return 

  flights.sort_values(['MONTH','DAY','SCHED_DEP']).groupby(['AIRLINE','ORG_AIR']).apply(max_delay_streak)

代码在这里运行正常。接下来,我尝试用黄色高亮显示延迟条纹为0(或任何其他数字)的行。

结果

我尝试了两个方法,程序运行没有错误,并产生原始的数据,没有突出显示任何东西。

方法1:在上面程序的最后一行重用.loc逻辑,使用索引进入特定的行以添加颜色。

代码语言:javascript
运行
AI代码解释
复制
df_return.loc[no_streak].style.apply('background-color: yellow',axis=1)

方法2:丑陋的方式。我试图提取所有(航空公司,原产地机场,第一/最后)索引,检查它们与零延迟条纹指数,其中信息存储在变量'no_streak‘(在本例中('EV','PHX','first'),('EV','PHX',’最后‘))。如果条件是满意的,然后应用颜色。

代码语言:javascript
运行
AI代码解释
复制
df_return.style.apply(['background-color: yellow' for x in list(df_return.index) if x in list(no_streak)], axis=1)

为什么我的代码无法得到所需的图片?是否有可能实现这一目标?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-06 22:59:16

在max_delay_streak()函数之外执行样式化。

代码语言:javascript
运行
AI代码解释
复制
import pandas as pd
flights = pd.read_csv('flights.csv')
flights['ON_TIME'] = flights['ARR_DELAY'].lt(15).astype(int)
flights_agg = flights.sort_values(['MONTH', 'DAY', 'SCHED_DEP']).groupby(['AIRLINE', 'ORG_AIR']).apply(max_delay_streak)
flights_agg.style.apply(lambda x: ['background-color: yellow']*3 if x.streak == 0 else ['background-color: default']*3, axis=1)

其中max_delay_streak()是在问题中定义的函数。

票数 0
EN

Stack Overflow用户

发布于 2020-05-09 21:57:57

虽然代码并不优雅,但我终于得到了我想要的。输入一个数字,数据将突出显示符合搜索条件的所有相应行,结果如下所示。在这里输入图像描述

代码语言:javascript
运行
AI代码解释
复制
df = flights.sort_values(['MONTH','DAY','SCHED_DEP']).groupby(['AIRLINE','ORG_AIR']).apply(max_delay_streak)
streak_no = input("Enter streak no: ")
streak_no = int(streak_no)
color_dict = {"AA": "lightcoral", "AS": "orangered", "B6": "orange", "DL": "yellow" , "EV": "lawngreen", "F9": "palegreen", "HA": "lightcyan", "MQ": "aqua",
  "NK": "skyblue", "OO": "lightsteelblue", "UA": 'lavender', "US": "violet", "VX": "magenta", "WN": "pink"}

# first level coloring
# get the first level index value
first_level_index = df.index.get_level_values(0)
# get unique first level value where criteria is met
no_streak_row_unique = df[df['streak'] == streak_no].index.get_level_values(0).unique()
# decide which row in first level to color
first_level_color_arrangement = [ {'selector': f'.row{i}.level0', 
          'props': [('background-color', color_dict[j])]} if j in no_streak_row_unique else {'selector': f'.row{i}.level0', 
          'props': [('background-color', 'default')]}for i,j in enumerate(first_level_index)]

# second level unique
second_level_index = list(zip(df.index.get_level_values(0) , df.index.get_level_values(1)))
# no_streak_row_2_unique
no_streak_row_2_unique = list(set(zip(df[df['streak'] == streak_no].index.get_level_values(0), df[df['streak'] == streak_no].index.get_level_values(1))))
second_level_color_arrangement = [ {'selector': f'.row{i}', 
          'props': [('background-color', color_dict[j[0]])]} if j in no_streak_row_2_unique else {'selector': f'.row{i}', 
          'props': [('background-color', 'default')]}for i,j in enumerate(second_level_index)]

df.style.set_table_styles(first_level_color_arrangement + second_level_color_arrangement)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61636323

复制
相关文章
每个前端工程师都应该了解的图片知识(长文建议收藏)
随着web的发展,网站资源的流量也变得越来越大。据统计,60% 的网站流量均来自网站图片,可见对图片合理优化可以大幅影响网站流量,减小带宽消耗和服务器压力。
coder_koala
2019/09/17
1.1K0
每个前端工程师都应该了解的图片知识(长文建议收藏)
每个前端工程师都应该了解的图片知识(长文建议收藏)
随着web的发展,网站资源的流量也变得越来越大。据统计,60% 的网站流量均来自网站图片,可见对图片合理优化可以大幅影响网站流量,减小带宽消耗和服务器压力。
桃翁
2019/05/31
1.4K0
探索现代图片格式:从GIF到HEIF,优势与适用场景一览
每个像素所能显示的彩色数为2的8次方,即256种颜色。这种彩色深度适用于较古老的显示设备和简单的图像场景。它在色彩表现方面相对较弱,颜色过渡可能显得不够平滑,导致图像呈现出颗粒感,不适合表现细腻的色彩变化。
linwu
2023/07/27
8450
探索现代图片格式:从GIF到HEIF,优势与适用场景一览
动态图片技术 : 历史、格式与性能
本文介绍了动态图片编码、解码、格式、性能和应用场景方面的知识,并给出了详细的对比结果。
QQ音乐技术团队
2017/09/21
3.9K0
动态图片技术 : 历史、格式与性能
Python分离GIF动画成为多帧图像
首先需要使用命令pip install pillow安装Python扩展库pillow。 from PIL import Image import os gifFileName = 'test.gif' #使用Image模块的open()方法打开gif动态图像时,默认是第一帧 im = Image.open(gifFileName) pngDir = gifFileName[:-4] #创建存放每帧图片的文件夹 os.mkdir(pngDir) try: while True: #保存当前帧图片
Python小屋屋主
2018/04/16
1.7K0
一道图片隐写题引发的思考
下载附件,只有一张图片,后缀为png格式,用010editor查看并不能找到什么由出题人写入的额外的信息,而常见的png隐写方式zsteg、LSB,经过我的各种尝试,也无法解出任何信息,一时间想不到该怎么解这道题,在网上也查不到有关该题的wp,于是我点开了solved列表,刚好在里面发现了一个熟悉的名字
回天
2023/04/25
4680
一道图片隐写题引发的思考
全面掌握移动端主流图片格式的特点、性能、调优等
图片通常是移动端应用流量耗费最多的部分,并且占据着重要的视觉空间。以大家最常用的即时通讯IM应用为例,应用中存在大量的图片数据往来(比如图片消息、用户相册、用户头像等等)。合理的图片格式选用和优化不仅能减小图片传递过程中的数据量、提升视觉效果,还能显著降低服务端的带宽、计算资源等基础设施成本,一举多得。
JackJiang
2018/08/29
1.9K0
动画菜鸡的自我救赎之企鹅辅导品牌页开发总结
一般来说,品牌介绍页都是少不了各种动画的。这里我列出了辅导品牌页的三个主要的动画,后面我会讲我的实现
IMWeb前端团队
2019/12/06
1.8K0
Android动画-Drawable Animation(帧动画)
Drawable Animation是逐帧动画,就像GIF图片,通过一系列Drawable依次显示来模拟动画的效果,那么使用它之前必须先定义好各个帧。我们可以通过代码定义,也可以使用xml文件定义,一般使用后者
码客说
2019/10/22
9320
[android] 帧动画和补间动画
添加<animation-list>节点,设置是否循环android:oneshot:”false”
唯一Chat
2019/09/10
7560
Android 动画总结(2) - 帧动画
Frame Animation,也叫 Drawable Animation,原理就类似视频快速播放一帧一帧的图片。一般场景下很少使用,工作中遇到的是有时会有背景色,用若干颜色值变化,有时一个 View 要弹跳,其实是做好了若干切图,图片大小一致,但里面的内容处于不同位置,然后播放起来看着好像是在弹跳。
三流之路
2018/09/11
9450
Android 动画总结(2) - 帧动画
图片一键压缩,支持批量压缩
最近在写项目时用到了很多图片,由于考虑到图片过大会占用许多服务器资源所以就想到了去压缩图片,但是由于图片太多所以用photoshop操作也挺麻烦就找到了一个网站,如下
用户10106350
2022/10/28
1.2K0
Android实现帧动画
android:oneshot=”true”当为true时表示只播放一次,为false时表示循环播放;
程序员飞飞
2020/02/27
6600
Lottie在手,动画我有:ios/Android/Web三端复杂帧动画解决方案
本文编辑于OS X系统,之前出现过windows下看不到部分图片的情况,如有请大家告知
啦啦啦321
2019/09/29
3.6K0
Lottie在手,动画我有:ios/Android/Web三端复杂帧动画解决方案
不一样的动图-APNG
动图 说到动图,首先我们想到的 GIF 格式,GIF 在网络上流行已久,各种动态表情包都是 GIF 图做的。 但是 GIF 的缺点也很明显,透明背景的 GIF 无法做到像素的绝对平滑过度,于是乎我们可以看到带透明的 GIF 图周围杂边非常明显,如下: image.png 通常解决这种问题是在外面加上一圈白色的描边,这样在白色背景下可以掩盖杂边问题,但是在深色背景下依然无解: image.png APNG 完美的解决了这个问题。 APNG APNG 全称是 Animated Portable Netw
Bob.Chen
2018/05/02
7.8K0
不一样的动图-APNG
复杂帧动画之移动端video采坑实现
Airbnb 开源项目,通过解析 AE 动画为 json 数据,支持跨平台的动画效果解决方案;lottie 在辅导中已经有实际应用,使用过的同学都表示对其实现效果和开发速度表示称赞和推荐。
IMWeb前端团队
2019/12/04
2.4K0
TimePicker控件、帧动画、补间动画
1.TimePicker控件 最近感觉每个开发平台的控件基本都差不多,在Android中控件的事件和.net控件直接写事件有一定的区别,net事件可以直接界面进行事件的绑定哈。不过在Silverlight中,如果用MVVM设计模式的话,也可以自己为控件写Command命令的,可以取代控件的事件。 TimePicker控件,也就是事件控件,可以用设置时间的。在页面拖入控件后,默认是显示系统时间的。 1 <TimePicker 2 android:id="@+id/timePicker1
水击三千
2018/02/27
9080
复杂帧动画之移动端video采坑实现
本文由 IMWeb 首发于 IMWeb 社区网站 imweb.io。点击阅读原文查看 IMWeb 社区更多精彩文章。 在企鹅辅导品牌页中,我们需要实现一个动画如下: 页面滚动到动画区域,播放动画, 对应动画部分如下: 帧动画当前的实现有以下几种方式: GIF 动画 大家比较熟悉的图片格式 lottie(http://airbnb.io/lottie/) Airbnb 开源项目,通过解析 AE 动画为 json 数据,支持跨平台的动画效果解决方案;lottie 在辅导中已经有实际应用,使用过的同学都表示
用户1097444
2022/06/29
2.4K0
复杂帧动画之移动端video采坑实现
高性能动画组件VAP开源啦!
VAP(Video Animation Player)是企鹅电竞开发,用于播放酷炫动画的实现方案。 相比Webp,Apng动图方案,具有高压缩率(素材更小)、硬件解码(解码更快)的优点 相比Lottie,能实现更复杂的动画效果(比如粒子特效) 特效展示 VAP还能在动画中融入自定义的属性(比如用户名称, 头像) 支持平台 Android, iOS, web 性能简述 VAP在文件大小与解码性能上有很大的优势,实验参数请参考github:https://github.com/Tencent/va
腾讯开源
2020/09/08
5K1
点击加载更多

相似问题

使用xslt从xml获取数据

10

使用XSLT获取XML标记值

00

使用xslt从xml获取值

12

使用XSLT从XML获取数据

21

使用xslt从xml获取属性

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档