pandas和numpy笔记(不断更新)
程序员文章站
2022-04-25 23:10:14
...
pandas笔记
pandas.read_csv不忽略首行
可以在read_csv函数中加入参数header=None
,如下:
train_data = pd.read_csv("train.csv", header=None)
pandas.to_csv忽略index
可以在to_csv函数中加入参数index=False
,如下:
# 忽略index
df.to_csv("result.csv", index=False)
pandas去掉不是数字的列
# remove the non-numeric columns
train_data = train_data._get_numeric_data()
pandas转numpy
# create a numpy array with the numeric values for input into scikit-learn
to_nparray = train_data.as_matrix()
获取pandas.DataFrame第一列的数据
# DataFrame第一列
ID = test_data.iloc[:, [0]]
numpy笔记
获取numpy.array中最后一列的数据
y = to_nparray[:,-1] # 最后一列
X = to_nparray[:,0:-1] # 从第一列开始到倒数第二列
numpy.dtype:int转字符串
# np.dtype: int转字符串
res = np.char.mod('%d', res)
numpy拼接字符串array
# numpy拼接字符串
res = np.core.defchararray.add(prefix, res)
numpy按行合并两个numpy.array
# 按行合并两个numpy.array,ID和res是np.array
data = np.hstack((ID, res))
numpy.array转DataFrame
# numpy.array转DataFrame
df = DataFrame(data, columns=['ID', 'Pred'])
numpy产生随机矩阵
# 产生小数矩阵
np.random.random((shape0, shape1))
# 产生标准正态分布矩阵
np.random.randn(shape0, shape1)
numpy保留小数点后一位
# out: optional
np.around(matrix, decimals=1, out=None)
# 保留两位,将decimals改为2即可
Scipy笔记
求解正态分布
可以使用scipy.stats.norm求解正态分布,示例如下:
import numpy as np
from scipy.stats import norm
x = np.array([[1,2,3], [4,5,6]])
loc = np.mean(x) # 均值
scale = np.var(x) # 方差
print(norm.pdf(x, loc, scale)) # 概率密度函数
运行结果如下:
[[0.09472978 0.11983675 0.13478507]
[0.13478507 0.11983675 0.09472978]]
附上scipy.stats.norm官方文档:
推荐阅读
-
使用NumPy和pandas对CSV文件进行写操作的实例
-
python安装numpy和pandas的方法步骤
-
对numpy和pandas中数组的合并和拆分详解
-
Numpy的ndarray和Pandas的Series和DataFrame类型的一些对比和理解
-
numpy和pandas的基础用法
-
【Numpy库学习笔记】Numpy中dim、shape和size的理解
-
numpy和matplotlib的学习笔记
-
12个很棒的Pandas和NumPy函数,让python数据分析事半功倍
-
Github上Pandas,Numpy和 Scipy三个库中20个最常用的函数(1)
-
利用numpy和pandas处理csv文件中的时间方法