從0開始學習R語言--Day30--函數型分析

????????在研究離散變量之間的影響時,我們往往只能獲取類似中位數,平均數點來額外數據特點;但如果數據本身具有時間特性的話,我們可以嘗試運用函數型分析,將靜態的離散點轉為動態過程來分析,即若本來是分析離散點對另一個變量的影響,那么轉換后就變為研究一條曲線的變化趨勢是否對應了另一個變量的變化特點。

????????比如氣溫數據分析冰淇淋銷量時,只看離散點只能知道氣溫越高,銷量越好,但若看趨勢,很可能捕捉到在下午氣溫會比其他時候更高,賣出更多冰淇淋的特點。以下是一個例子:

library(fda)# 生成模擬數據 -------------------------------------------------
set.seed(123)
n <- 100  # 樣本量
time_points <- seq(0, 1, length.out=50)  # 觀測時間點# 生成隨機溫度曲線(函數型X)
true_curve <- sin(2 * pi * time_points) * exp(-time_points)
X_curves <- t(replicate(n, true_curve + rnorm(length(time_points), sd=0.5)))# 生成產量Y(與曲線變化率相關)
# Y <- 5 * apply(X_curves, 1, function(x) sum(diff(x))) + rnorm(n, sd=2)
Y <- 5 * apply(X_curves, 1, function(x) sum(abs(diff(x)))) + rnorm(n, sd=2)
# 創建函數型數據對象
basis <- create.bspline.basis(c(0,1), nbasis=15)
X_fd <- smooth.basis(time_points, t(X_curves), basis)$fd# 函數型線性回歸
fit <- fRegress(Y ~ X_fd)  # 注意這里變量名是X_fd# 預測新數據
new_curve <- true_curve + 0.3 * sin(4 * pi * time_points)
new_fd <- smooth.basis(time_points, new_curve, basis)$fdbeta_fd <- fit$betaestlist[[2]]$fd  # 第1個是截距,第2個是X_fd的系數# 計算預測值:Y = 截距 + 積分(X(t) * beta(t) dt)
intercept <- fit$betaestlist[[1]]$fd$coefs  # 截距項
pred_integral <- inprod(new_fd, beta_fd)    # 函數內積
prediction <- intercept + pred_integralprint(paste("預測產量:", prediction))# 輸出結果
plot(new_fd, main="新溫度曲線")
print(paste("預測產量:", round(prediction, 2)))

輸出:

[1] "預測產量: 153.38"

圖像顯示溫度按照正弦曲線的趨勢波動,但在實際應用中,在畫圖時一般不推薦用標準化的時間軸,會忽略真實的現實信息,像這里便無法判斷時間段指的是一個小時還是12個小時。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/86379.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/86379.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/86379.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Agent輕松通-P3:分析我們的Agent

歡迎來到啾啾的博客&#x1f431;。 記錄學習點滴。分享工作思考和實用技巧&#xff0c;偶爾也分享一些雜談&#x1f4ac;。 有很多很多不足的地方&#xff0c;歡迎評論交流&#xff0c;感謝您的閱讀和評論&#x1f604;。 目錄 1 引言2 使用工具分析Agent&#xff1a;”日志“…

如何將FPGA設計驗證效率提升1000倍以上(1)

我們將以三個設計樣例&#xff0c;助力您提升設計開發效率。 對于FPGA應用開發來說&#xff0c;代碼是寫出來的&#xff0c;更是調試出來的。軟件仿真擁有最佳的信號可見性和調試靈活性&#xff0c;被大多數工程師熟練使用&#xff0c;能夠高效捕獲很多顯而易見的常見錯誤。 …

RabbitMQ 利用死信隊列來實現延遲消息

RabbitMQ 利用死信隊列來實現延遲消息 基于 TTL&#xff08;Time-To-Live&#xff09; 死信隊列&#xff08;DLX&#xff09;的方式來實現延遲消息 首先消息會被推送到普通隊列中&#xff0c;該消息設置了TTL&#xff0c;當TTL到期未被消費掉&#xff0c;則會自動進入死信隊列…

Keepalived+Haproxy+Redis三主三從

一、集群部署 1、案例拓撲 2、資源列表 主從節點是隨機分配的&#xff0c;下屬列表只是框架&#xff1a; 操作系統主機名配置IP應用OpenEuler24master12C4G192.168.10.101RedisOpenEuler24master22C4G192.168.10.102RedisOpenEuler24master32C4G192.168.10.103RedisOpenEule…

Modbus轉IEC104網關:電力自動化系統的橋梁

現代電力系統中&#xff0c;變電站、發電廠以及配電網絡中存在大量采用不同通信協議的設備。Modbus協議因其簡單易用在現場設備中廣泛部署&#xff0c;而電力行業主流監控系統則普遍采用IEC 60870-5-104&#xff08;簡稱IEC104&#xff09;協議。協議差異導致的數據孤島現象&am…

@annotation:Spring AOP 的“精準定位器“

想象你是一位快遞員&#xff0c;負責給一個大型社區送快遞。社區里有幾百戶人家&#xff0c;但只有特定家庭需要特殊服務&#xff1a; 普通快遞&#xff1a;直接放快遞柜生鮮快遞&#xff1a;需要冷藏處理貴重物品&#xff1a;需要本人簽收藥品快遞&#xff1a;需要優先配送 …

Web Worker使用指南 解鎖瀏覽器多線程 ,提升前端性能的利器

文章目錄 前言一、什么是 Web Worker二、適用場景1、CPU 密集型計算2、圖像/視頻處理3、實時數據流處理&#xff08;高頻場景&#xff09;4、后臺文件操作5、復雜狀態機/AI邏輯&#xff08;游戲開發&#xff09;6、長輪詢與心跳檢測7、WebAssembly 加速8、WebGL 與 Canvas 渲染…

React 18.2.0 源碼打包

一、React源碼地址 GitHub&#xff1a;React 二、參考文章 sourcemap實戰-生成react源碼sourcemap Rollup中文文檔 JavaScript Source Map 詳解 全網最優雅的 React 源碼調試方式 三、打包操作 安裝依賴 // 全局安裝yarn npm i -g yarn // 源碼項目目錄下執行yarn安裝依賴…

UniApp 開發第一個項目

UniApp 開發第一個項目全流程指南,涵蓋環境搭建、項目創建、核心開發到調試發布,結合最新實踐整理而成,適合零基礎快速上手: ?? 一、環境準備(5分鐘) 安裝開發工具 HBuilderX(官方推薦IDE):下載 App 開發版,安裝路徑避免中文或空格 微信開發者工具(調試小程序必備…

Web項目開發中Tomcat10+所需的jar包

版權聲明 本文原創作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 項目背景 Web項目中使用低版本Tomcat時常用的jar包如下&#xff1a; javax.servlet-apijavax.ejb-apijavax.jms-apijavax.json-api 當Web項目使用Tomcat10的版本時&#…

網絡安全就業方向與現實發展分析:機遇、挑戰與未來趨勢

網絡安全行業的戰略地位與就業背景 在數字經濟蓬勃發展的今天&#xff0c;網絡安全已從技術分支演變為關乎國家安全、企業存亡和個人隱私的核心領域。根據國家網信辦數據顯示&#xff0c;2025年我國網絡安全人才缺口達200萬人&#xff0c;較2023年增長33%。這一現象源于三重驅…

iOS runtime隨筆-消息轉發機制

運行時的消息轉發分三步, 當你調用了沒有實現的方法時, 有機會通過runtime的消息轉發機制補救一下 resolveInstanceMethod/resolveClassMethod 這里可以動態去創建方法來解決CrashforwardingTargetForSelector ?????第一步未解決, 就會走到這里, 可以給出一個Target去轉發…

vue3用js+css實現輪播圖(可調整堆疊程度)

先看效果 html <divclass"outer"style"width: 650px;background: #fff;box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);border-radius: 15px;margin: 0 10px 15px 5px;">//這里用的是svg-icon,需要的可自行替換為其他圖片<svg-iconid"btn_l&q…

Three.js項目實戰:從零搭建小米SU7三維汽車

大家如果有過購車的經驗&#xff0c;肯定會先從網站上收集車輛的信息&#xff0c;比如懂車帝&#xff0c;汽車之家&#xff0c;這些網站上逼真的看車效果是如何實現的呢&#xff0c;這節課帶你從0-1快速的手搓一個看車小項目。 懂車帝官網 效果 視頻教程和筆記 大家可以下方小…

Android13 永久關閉SELinux 權限

永久關閉 SeLinux 在cmdline中增加參數androidboot.selinuxpermissive&#xff1b; 芯片: QCM6115 版本: Android 13 kernel: msm-4.19 ~/temp_code/SLM927D_LA.UM.9.15$ git diff device/qcom/bengal/BoardConfig.mk diff --git a/device/qcom/bengal/BoardConfig.mk b…

Linux創建DHCP服務

Linux可作為DHCP服務端使用&#xff0c;為同一個網絡下的其它機器動態分配ip。在一些情況下&#xff0c;可以起到很大的作用。 二級標題 安裝dnsmasq # ubuntu sudo apt update -y sudo apt install -y dnsmasq# centos sudo yum install -y dnsmasq修改配置文件 sudo vim …

汽車4G-TBOX智能終端 汽車國標GB/T 32960協議

汽車國標GB/T 32960協議4G TBOX是一種廣泛應用于車聯網的設備&#xff0c;下面將從不同方面為你詳細介紹。 移動管家汽車4G-TBOX智能終端定義與用途 4G TBOX是基于車聯網技術智能服務系統中的采集終端。以車云網的4G TBOX_CC750為例&#xff0c;它為整個智能服務系統提供GPS/…

JavaEE-Mybatis初階

什么是MyBatis MyBatis是?款優秀的 持久層 框架&#xff0c;?于簡化JDBC的開發。 MyBatis本是 Apache的?個開源項?iBatis&#xff0c;2010年這個項?由apache遷移到了google code&#xff0c;并 且改名為MyBatis 。2013年11?遷移到Github 創建項目時添加依賴 上面有…

記一次jvm機器問題定位經歷

背景 開發過程中發現機器指標異常&#xff0c;端口也hang住無響應&#xff0c;端口返回為timeout&#xff0c;對應探活檢測也失敗了。 現象 在st測試環節&#xff0c;突然每隔一段時間新接口就hang住無響應&#xff0c;觀察機器監控也發現端口探活失敗&#xff0c;看機器指標…

【機器學習深度學習】張量基本操作

目錄 一、張量基本操作 1.1 執行代碼 1.2 運行結果 1.3 代碼解析 ? 1. 創建張量&#xff08;tensor、randn、zeros&#xff09; ? 2. 索引與切片&#xff08;類似 NumPy&#xff09; ? 3. 形狀變換&#xff08;reshape、轉置、壓縮&#xff09; ? 4. 數學運算&#x…