小编NK_*_*NK_的帖子

Python:读取 CSV 文件时替换值

我有一个 CSV 文件,其中包含多个列,其中包括整数和字符串。当然,由于混合数据类型,我收到了数据类型警告。我用这个通用命令读取了该文件。

df = pd.read_csv(path, sep=";", na_values=missing)
Run Code Online (Sandbox Code Playgroud)

我可以使用low_memory=Falseordtype=object来消除警告,但据我所知,这使得读取我的文件不会提高内存效率。

我也可以使用na_values="my_string",但我有其他缺失值(应该是真正的缺失值)并且不想混合它们。

我不需要字符串的值,只需要它的值计数,所以我想用整数替换它。像这样的东西。

df.replace(to_replace="my_string", value=999)
Run Code Online (Sandbox Code Playgroud)

但是,是否也可以读取 CSV 文件时替换值?或者是否存在其他解决方案?我不想简单地消除警告,而是找到一种内存效率更高的解决方案。

(我知道这个答案,但它并不能真正帮助我解决我的问题。)

python csv pandas

4
推荐指数
1
解决办法
1万
查看次数

Matplotlib/Pandas 中的水平堆积条形图

我认为我的问题很容易解决,但我就是找不到解决方案。

我想使用此数据使用 Matplotlib/Pandas 制作水平堆积条形图。csv 文件包含调查问卷的答案。“Q4”包含 1-7 的值。6 和 7 应该是缺失值。

missing = {"Q4":[6,7]}
df = pd.read_csv("my_file.csv", sep=";", na_values=missing)
Run Code Online (Sandbox Code Playgroud)

我想通过使用这样的东西来绘制“Q4”的值计数。

df["Q4"].value_counts()
Run Code Online (Sandbox Code Playgroud)

输出是这样的:

1.0    2906
2.0    1508
3.0     738
4.0     206
5.0     154
Run Code Online (Sandbox Code Playgroud)

我的图应该由一个水平列组成,将值 1-5 的值计数显示为堆叠条。

python charts matplotlib pandas

0
推荐指数
1
解决办法
4346
查看次数

标签 统计

pandas ×2

python ×2

charts ×1

csv ×1

matplotlib ×1