我已经读过将csv文件加载到pandas数据帧中,并希望对数据帧进行一些简单的操作.我无法弄清楚如何根据原始数据框中的选定列创建新数据框.我的尝试:
names = ['A','B','C','D']
dataset = pandas.read_csv('file.csv', names=names)
new_dataset = dataset['A','D']
Run Code Online (Sandbox Code Playgroud)
我想创建一个包含原始数据帧中A列和D列的新数据帧.
我有镶木地板格式的数据,它太大而无法放入内存(6 GB)。我正在寻找一种使用 Python 3.6 读取和处理文件的方法。有没有办法流式传输文件、下采样并保存到dataframe
? 最终,我想要使用dataframe
格式的数据。
在不使用 spark 框架的情况下尝试执行此操作是否错误?
我曾尝试使用pyarrow
,fastparquet
但在尝试读取整个文件时出现内存错误。任何提示或建议将不胜感激!
我有一个值数组,x = {0,0,1,2,3,0,0,7,8}
我想使用C删除零条目。
尝试:
我试图遍历数组中的每个值,并检查条目是否不等于零。如果满足此条件,那么我将尝试使用原始数组值填充新数组。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
int x[] = { 0, 0, 1, 2, 3, 0, 0, 7, 8 };
int i;
int x_upd[100];
for (i = 0; i < 9; i++) {
if (x[i] != 0) {
x_upd[i] = x[i]; // if true, populate new array with value
}
}
for (i = 0; i < 9; i++) {
printf(" Peak updated %d\t", x_upd[i]); //
}
return 0;
} …
Run Code Online (Sandbox Code Playgroud) 我有以下形式的打印声明:
print("a = ", a, "b = ", b, "c = ", c)
Run Code Online (Sandbox Code Playgroud)
其中 a、b 和 c 是浮点数。我想打印到小数点后三位,并保留打印语句当前的形式,如果可能的话?
试图
在类似的帖子之后,我尝试了以下操作:
print(" %.3f a = ", a, "%.3f b = ", b, "%.3f c = ", c)
Run Code Online (Sandbox Code Playgroud)
但这只是在打印语句中打印了“%.3f”。关于如何调整我的打印报表有什么建议吗?
我希望扩展此处采用的方法,但对于六个或更多列表的情况:How to Create Nested Dictionary in Python with 3lists
a = ['A', 'B', 'C', 'D']
b = [1, 2, 3, 4]
c = [9, 8, 7, 6]
d = [0, 3, 5, 7]
e = [11, 13, 14, 15]
Run Code Online (Sandbox Code Playgroud)
期望的输出:
{'A':{1 :9, 0:11} , 'B':{2:8, 3:13}, 'C':{3:7, 5:13} , 'D':{4:6, 7:15}}
Run Code Online (Sandbox Code Playgroud)
到目前为止,这是我尝试过的:
out = dict([[a, dict([map(str, i)])] for a, i in zip(a, zip(zip(b, c), zip(d,e) ))])
Run Code Online (Sandbox Code Playgroud)
输出很接近,但并不完全是我想要的。任何提示将非常感谢!
python ×3
python-3.x ×2
algorithm ×1
arrays ×1
c ×1
dataframe ×1
dictionary ×1
fastparquet ×1
pandas ×1
parquet ×1
pyarrow ×1
zero ×1