一日二技: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。只要掌握常见用法,就能大大提高你的开发效率。

目录
相关文章
|
5月前
|
Ubuntu Linux Docker
|
17小时前
|
数据可视化 关系型数据库 MySQL
Docker可视化工具-Portainer
Docker可视化工具-Portainer
42 1
|
5月前
|
Ubuntu Linux Docker
|
9月前
|
Linux Shell Docker
docker--Dockerfile、构建 python 镜像
docker--Dockerfile、构建 python 镜像
|
9月前
|
数据可视化 Docker 容器
docker可视化工具Portainer
docker可视化工具Portainer
244 0
|
9月前
|
Python
Pandas常用操作命令(四)
Pandas常用操作命令(四)
|
9月前
|
数据采集 索引 Python
Pandas常用操作命令(二)
Pandas常用操作命令(二)
Pandas常用操作命令(二)
|
9月前
|
SQL 数据采集 JSON
Pandas常用操作命令(一)
Pandas常用操作命令(一)
|
9月前
|
索引 Python
Pandas常用操作命令(三)
Pandas常用操作命令(三)
|
监控 数据可视化 开发者
Docker 可视化工具介绍|学习笔记
快速学习 Docker 可视化工具介绍
114 0