一日二技:Pandas 与 Docker 的使用技巧

简介: 一日二技:Pandas 与 Docker 的使用技巧

摄影:产品经理坐车2小时去吃个老火锅

pandas 读取无头 CSV

我们知道,CSV 一般是长这样的:

其中,第一行的name,salary,work叫做 CSV 的头(header)。正常情况下,CSV 都是有头的,所以当我们使用 pandas 读取 CSV 的时候非常方便:

import pandas as pd
df = pd.read_csv('example.csv')
print(df)

运行效果如下图所示:

但有时候,一些特殊的 CSV 文件可能没有头。例如他们可能长成下面这样:

这种情况下,如果直接使用 pandas 读取,第一行数据就会变成头,如下图所示。但这样显然不是我想要的结果:

为了解决这种问题,有两种解决方法。第一种方法,是用文本编辑器打开这个 CSV 文件,手动给他把头加上,保存。然后再用 pandas 来读。

第二种方法是在 pandas 读取的时候,增加一个参数names,它的值是一个列表,也就是头:

import pandas as pd
df = pd.read_csv('example.csv', names=['name', 'salary', 'work'])
print(df)

运行效果如下图所示:

Docker build 提高 apt-get 速度

在国内使用 Docker 构建基于 Ubuntu 的镜像时,默认使用的是官方源。由于众所周知的原因,构建的速度可能很慢。如果是直接操作宿主机的 Ubuntu,我们可以使用 vim 或者图形界面修改源,使用阿里源从而提高速度。

如果是在 Docker 里面应该怎么办呢?我们就可以使用Linux 文本处理三剑客之一的sed来非交互式修改源文件。

在 Docker 中增加如下两行语句:

RUN sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
RUN apt-get clean

它的作用是把/etc/apt/sources.list文件中的所有archive.ubuntu.com替换为mirrors.aliyun.com。从而提高速度。

所谓的 Linux 文本处理三剑客,指的是grepawksed。只要掌握常见用法,就能大大提高你的开发效率。

目录
相关文章
|
10月前
|
Ubuntu Linux Docker
|
6天前
|
Docker Python 容器
python检测docker compose文件是否正确
python检测docker compose文件是否正确
|
2月前
|
Docker Python 容器
[docker]封装python的docker镜像
[docker]封装python的docker镜像
|
2月前
|
Docker Python 容器
5 分钟,教你用 Docker 部署一个 Python 应用!
5 分钟,教你用 Docker 部署一个 Python 应用!
|
10月前
|
Ubuntu Linux Docker
|
10月前
|
Docker Python Windows
1行命令搭建自己的python服务器,docker,安装 jupyter
1行命令搭建自己的python服务器,docker,安装 jupyter
147 0
|
Linux Shell Docker
docker--Dockerfile、构建 python 镜像
docker--Dockerfile、构建 python 镜像
|
监控 数据可视化 前端开发
Docker之可视化工具Docker UI
Docker之可视化工具Docker UI
494 0
|
数据安全/隐私保护 Docker 容器
docker 安装jupyter-nodebook0.35.4
docker 安装jupyter-nodebook0.35.4
509 0
docker 安装jupyter-nodebook0.35.4
|
网络安全 开发工具 Docker
Python的docker-py模块
Python的docker-py模块
423 1