关于GRUpython程序的理解

任务一:将numpy和pandas讲明白

numpy:
一维数组
numpy.array()
a.mean()
a.std()
a**2
a + b
a.dtype
a[1:3]

import numpy as np

# 创建一维数组
a = np.array([1, 2, 3, 4, 5])

# 计算一维数组的均值
mean = a.mean()
print("一维数组的均值:", mean)

# 计算一维数组的标准差
std_dev = a.std()
print("一维数组的标准差:", std_dev)

# 对一维数组中的每个元素进行平方
squared = a**2
print("一维数组每个元素的平方:", squared)

# 与另一个一维数组相加
b = np.array([5, 4, 3, 2, 1])
addition = a + b
print("两个一维数组的加法结果:", addition)

# 获取一维数组的数据类型
data_type = a.dtype
print("一维数组的数据类型:", data_type)

# 选取一维数组的子数组,包括索引1到索引2的元素(不包括索引2)
sub_array = a[1:3]
print("选取的子数组:", sub_array)

二维数组
numpy.array()
a.mean()
a.std()
a.mean(axis == 0):对列求均值
a.mean(axis == 1):对行求均值
a[1:3,2:4]

import numpy as np

# 创建一个示例的二维NumPy数组
a = np.array([[1, 2, 3, 4],
              [5, 6, 7, 8],
              [9, 10, 11, 12]])

# 计算整个数组的均值
mean = a.mean()
print("全局均值:", mean)

# 计算整个数组的标准差
std_dev = a.std()
print("全局标准差:", std_dev)

# 沿着每列计算均值
column_means = a.mean(axis=0)
print("每列的均值:", column_means)

# 沿着每行计算均值
row_means = a.mean(axis=1)
print("每行的均值:", row_means)

# 选取子数组,从第1行到第2行,第2列到第3列的区域
sub_array = a[1:3, 2:4]
print("选取的子数组:")
print(sub_array)

我们的GRU程序中能用到的关于numpy的指令是:

np.empty((0,19),int)
np.hstack((np.ones(starttime,np.int64)*0,np.ones(endtime-starttime,np.int64)*faulttype))
np.vstack((seq_data,d))
np.argmax (forecasttestY)
np.array(data)
np.concatenate(forecasttestY, axis=0)

**pandas篇**:
Pandas特别是在处理结构化数据时非常有用。

pandas和numpy的区别:Pandas创建的一维数组可用index来指定索引,这样,访问时就可以通过索引来访问数组(Pandas的一维数组与Numpy的区别是,Pandas的有索引,Numpy的没有索引)。

Pandas有两种数据结构,Series和DataFrame,其中Series是一个一维数据,DataFrame是一个二维数据。

数据加载和保存:Pandas可以轻松地从多种数据源加载数据,包括CSV文件、Excel文件、SQL数据库、JSON文件等,并可以将数据保存为这些格式。
![在这里插入图片描述](https://img-blog.csdnimg.cn/ea52ac89177142aaaa0e0a2e6db9b647.png)
上述是比较常见的几种Pandas的用法。
示例:

```python
以下是一些常用的Pandas操作的代码示例:

```python
import pandas as pd

# 创建一个DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
        'Age': [25, 30, 35, 28, 22],
        'City': ['New York', 'San Francisco', 'Los Angeles', 'Chicago', 'Boston']}

df = pd.DataFrame(data)

# 显示DataFrame的前几行
print(df.head())

# 获取DataFrame的基本信息,包括列数、非空值数量、数据类型等
print(df.info())

# 获取DataFrame的统计摘要信息,包括均值、标准差、最小值、最大值等
print(df.describe())

# 选择一列数据
ages = df['Age']
print(ages)

# 过滤行数据
young_people = df[df['Age'] < 30]
print(young_people)

# 对DataFrame进行排序
sorted_df = df.sort_values(by='Age', ascending=False)
print(sorted_df)

# 添加新列
df['Salary'] = [60000, 75000, 80000, 55000, 50000]
print(df)

# 删除列
df = df.drop('City', axis=1)
print(df)

# 计算列的均值
average_age = df['Age'].mean()
print("平均年龄:", average_age)

# 使用groupby进行分组和汇总
grouped = df.groupby('City')
city_averages = grouped['Salary'].mean()
print(city_averages)

# 保存DataFrame到CSV文件
df.to_csv('data.csv', index=False)

# 从CSV文件加载DataFrame
loaded_df = pd.read_csv('data.csv')
print(loaded_df)

这些代码示例演示了如何使用Pandas进行常见的数据操作,包括创建DataFrame、数据查看、基本信息获取、描述性统计、列选择、行过滤、排序、列添加与删除、均值计算、分组和保存/加载数据等操作。Pandas是一个非常强大的数据处理工具,适用于数据分析、数据清洗、特征工程等各种数据处理任务。根据实际需求,你可以进一步探索Pandas的功能以进行更复杂的数据操作。

关于我们程序中使用的pandas命令:

pd.DataFrame(data)
pd.read_excel('W.xlsx')
df.to_excel(excel_file, index=False)
dataframe.values

任务二:Sequential()讲明白

keras中除了sequential外还有函数式API和子类API
函数式API的格式:

from tensorflow.keras.layers import Input, Dense, concatenate
from tensorflow.keras.models import Model

# 定义多个输入
input1 = Input(shape=(input_dim1,))
input2 = Input(shape=(input_dim2,))

# 创建模型的中间层
hidden1 = Dense(64, activation='relu')(input1)
hidden2 = Dense(64, activation='relu')(input2)

# 将中间层连接到输出层
merged = concatenate([hidden1, hidden2])
output = Dense(10, activation='softmax')(merged)

# 构建模型
model = Model(inputs=[input1, input2], outputs=output)

子类API:




```python
import tensorflow as tf

class CustomModel(tf.keras.Model):
    def __init__(self):
        super(CustomModel, self).__init__()
        self.dense1 = tf.keras.layers.Dense(64, activation='relu')
        self.dense2 = tf.keras.layers.Dense(10, activation='softmax')

    def call(self, inputs):
        x = self.dense1(inputs)
        return self.dense2(x)

model = CustomModel()

任务三:from tensorflow.keras.layers,keras和layers中都有哪些库可以用

官网:keras.layers:https://keras.io/api/layers/
这里面包含了keras下所有可以调用的layer

任务四:os干嘛的吗,举例子

经常要对大量文件和大量路径进行操作,这就依赖于os模块,
os.path.dirname(file) 获取当前文件的所在路径
os.getcwd()——得到当前工作的目录。
os.name()——判断现在正在实用的平台,Windows 返回 ‘nt‘; Linux 返回’posix‘
os.listdir()——指定所有目录下所有的文件和目录名。
os.remove()——删除指定文件
os.rmdir()——删除指定目录
os.mkdir()——创建目录注意:这样只能建立一层,
os.makedirs()——递归建立目录
os.path.isfile()——判断指定对象是否为文件。是返回True,否则False
os.path.isdir()——判断指定对象是否为目录。是True,否则False
os.path.exists()——检验指定的对象是否存在。是True,否则False
os.path.split()——返回路径的目录和文件名。
os.system()——执行shell命令。
os.chdir()——改变目录到指定目录
os.path.getsize()——获得文件的大小,如果为目录,返回0
os.path.abspath()——获得绝对路径。
os.path.join(path, name)——连接目录和文件名。
更多请看:https://www.cnblogs.com/insane-Mr-Li/p/9153394.html

任务五:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值