Python金融大数据分析练习题(基础+股票预测)

一、使用numpy/pandas编程实现以下题目0.首先引入所需要的包import numpy as npimport pandas as pd1.创建一个长度为8的一维全为0的ndarray对象,然后让第5个元素等于1nd1 = np.zeros(8)nd1[4] = 1nd12.创建一个元素为从20到59的ndarray对象np.arange(20,60)3.使用np.random.random创建一个10*10的ndarray对象,并打印出最大最小元素nd3 = np.ra
摘要由CSDN通过智能技术生成

一、使用numpy/pandas编程实现以下题目
0.首先引入所需要的包

import numpy as np
import pandas as pd

1.创建一个长度为8的一维全为0的ndarray对象,然后让第5个元素等于1

nd1 = np.zeros(8)
nd1[4] = 1
nd1

2.创建一个元素为从20到59的ndarray对象

np.arange(20,60)

3.使用np.random.random创建一个10*10的ndarray对象,并打印出最大最小元素

nd3 = np.random.rand(10,10)
print(nd3)
print("最大值为:"+str(np.max(nd3)))
print("最小值为:"+str(np.min(nd3)))

4.创建一个10*10的ndarray对象,且矩阵边界全为1,里面全为0

nd4 = np.zeros(shape=(10,10))
nd4[[0,9]] = 1
nd4[:,[0,9]] = 1
nd4

5.给定一个4维矩阵,并计算得到最后两维的和

nd5 = np.random.randint(0,5,size=(2,3,4,5))
nd5
nd5.sum(axis=(-1,-2))

6.创建一个64随机矩阵和一个43随机矩阵,求两个矩阵的积

nd6_1 = np.random.rand(6,4)
print(nd6_1)
print("************************************************")
nd6_2 = np.random.rand(4,3)
print(nd6_2)
print("************************************************")
nd6_sum = np.matmul(nd6_1,nd6_2)
print("两个矩阵的乘积为:\n"+str(nd6_sum))

7.创建一个5*5的随机矩阵,并让矩阵的每一行的元素都减去该行的平均值

nd7 = np.random.rand(5,5)
print(nd7)
nd7 - nd7.mean(axis=1).reshape(5,1)

8.随机创建一个15*5的矩阵,并将其进行正则化

#【注:正则的概念:假设a是矩阵中的一个元素,max/min分别是矩阵元素的最大最小值,则正则化后a = (a - min)/(max - min)】
nd8 = np.random.randint(0,5,size=(15,5))
print(nd8)
nd8_min = nd8.min()
nd8_max = nd8.max()
nd8_down = nd8_max - nd8_min
result8 = (nd8-nd8_min)/nd8_down
print(result8)

9.DataFrame数据创建
(1) 从NumPy数组创建DataFrame,命名为df1(注:使用numpy生成20个0-100随机数)
(2) 从NumPy数组创建DataFrame,命名为df2(注:使用numpy生成20个0-100固定步长的数)
(3) 从NumPy数组创建DataFrame,命名为df3(使用numpy生成20个指定分布(如标准正态分布)的数)
(4) 将df1、df2、df3按照行合并为新DataFrame,命名为df
(5) 将df1、df2、df3按照列合并为新DataFrame, 命名为df

#(1)从NumPy数组创建DataFrame,命名为df1(注:使用numpy生成20个0-100随机数)
tem1 = np.random.randint(1,100,20)
df1 = pd.DataFrame(tem1)
df1

#(2)从NumPy数组创建DataFrame,命名为df2(注:使用numpy生成20个0-100固定步长的数)
tem2 = np.arange(0,100,5)
df2 = pd.DataFrame(tem2
  • 4
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值