(2)原神角色數據分析-2

功能一:

得到某個屬性的全部角色,將其封裝在class中

"""各元素角色信息:一對多"""
from pandas import DataFrame, Series
import pandas as pd
import numpy as npclass FindType:# 自動執行,將傳入參數賦值給私有屬性self.Attributedef __init__(self, attribute):self.Attribute = attributedef find_type(self):role_things = pd.read_excel("C:/Users/YHT/Desktop/項目/原神各屬性角色信息.xlsx", header=0, index_col=0)# 補全role_things = role_things.fillna(axis=0, method="ffill")# 按照"屬性"這一列的信息,將所有數據重新分組,得到一個字典things_list = role_things.groupby("屬性").groupsreturn role_things.loc[things_list[self.Attribute]]

功能二:

定向查找某個角色信息,傳入參數為該角色的名稱

"""查找對應角色:一對一"""
from pandas import DataFrame, Series
import pandas as pd
import numpy as npclass FindRole:def __init__(self, role_name):self.role_name = role_namedef findrole(self):role_things = pd.read_excel("C:/Users/YHT/Desktop/項目/原神各屬性角色信息.xlsx", header=0, index_col=0)# 將屬性所包含的nan,進行填充role_things = role_things.fillna(axis=0, method="ffill")print(role_things)print()all_name = role_things["角色"]print(all_name)num = 0for x in all_name:if x == self.role_name:return_role = role_things.loc[:, "角色":]print(return_role.iloc[num])Attribute = return_role.iloc[num]["屬性"]Name = return_role.iloc[num]["角色"]Hp = return_role.iloc[num]["生命值"]Def = return_role.iloc[num]["防御力"]Atk = return_role.iloc[num]["攻擊力"]Break = return_role.iloc[num]["突破加成"]print(Name, Attribute, Hp, Def, Atk, Break)num += 1

功能三:

設置對應參數,篩選角色

比如,要找出生命值高于10000,防御力高于270,攻擊力高于300的角色

"""設置限制參數,查找對應角色:多對多"""
from pandas import DataFrame, Series
import pandas as pd
import numpy as npclass Num:def __init__(self, Hp, Def, Atk):self.Hp = Hpself.Def = Defself.Atk = Atkdef num(self):role_things = pd.read_excel("C:/Users/YHT/Desktop/項目/原神各屬性角色信息.xlsx", header=0, index_col=0)role_things = role_things.fillna(axis=0, method="ffill")if self.Hp is None:if self.Def is None:if self.Atk is None:print(role_things)else:return_things = role_things.loc[role_things["攻擊力"] > self.Atk]print(return_things)else:if self.Atk is None:return_things = role_things.loc[role_things["防御力"] > self.Def]print(return_things)else:return_things = role_things.loc[(role_things["防御力"] > self.Def) & (role_things["攻擊力"] > self.Atk)]print(return_things)else:if self.Def is None:if self.Atk is None:return_things = role_things.loc[role_things["生命值"] > self.Hp]print(return_things)else:return_things = role_things.loc[(role_things["生命值"] > self.Hp) & (role_things["攻擊力"] > self.Atk)]print(return_things)else:if self.Atk is None:return_things = role_things.loc[(role_things["生命值"] > self.Hp) & (role_things["防御力"] > self.Def)]print(return_things)else:return_things = role_things.loc[(role_things["生命值"] > self.Hp) & (role_things["防御力"] > self.Def) & (role_things["攻擊力"] > self.Atk)]print(return_things)

功能四:

按照某一參數,將角色順序重新排列

例如,按照生命值大小,將所有角色重新排列

"""按照某一參數重新排序:一對多"""
from pandas import DataFrame, Series
import pandas as pd
import numpy as npclass Sort:def __init__(self, input_x):self.input_x = input_xdef sort(self):type_bool = Truerole_things = pd.read_excel("C:/Users/YHT/Desktop/項目/原神各屬性角色信息.xlsx", header=0, index_col=0)role_things = role_things.fillna(axis=0, method="ffill")return_things = role_things.sort_values(by=self.input_x, ascending=type_bool, axis=0)print(return_things)

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

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

相關文章

山東布谷科技直播平臺搭建游戲開發技術分享:數據存儲的重要意義

在市場上的熱門的直播平臺中,有很多小程序為用戶提供各種各樣的功能,這其中就有很多游戲小程序,當今社會獨生子女眾多,很多作為獨生子女的用戶都會去選擇一個能夠社交互動的APP來填補內心的空虛,而直播平臺的實時互動的…

SAP 選擇屏幕組件名描述翻譯時字符長度不夠問題處理

問題:有時候我們在開發report程序的時候,要求程序顯示支持中英文,如果程序是在中文環境下開發的時候,需要進行翻譯處理,但是我們發現選擇屏幕上的組件的描述支持的默認長度是30位,如果超過該如何處理呢 解…

《路由與交換技術》讀書筆記

小小感悟 工作近3年,基本沒去看路由交換相關書籍,趁著搬家后,周末閑暇時間,快速看了一遍《路由與交換技術》,溫習了一遍,很有收獲,以后還是要多花時間看看其他類型的書。 讀書筆記 1.1 移動通…

構建一個LLM應用所需的所有信息

一、說明 您是否對大型語言模型(LLM)的潛力感興趣,并渴望創建您的第一個基于LLM的應用程序?或者,也許您是一位經驗豐富的開發人員,希望簡化工作流程?看看DemoGPT就是您的最佳選擇。該工具旨在簡…

【軟件測試】Linux環境下Docker搭建+Docker搭建MySQL服務(詳細)

目錄:導讀 前言 一、Python編程入門到精通二、接口自動化項目實戰三、Web自動化項目實戰四、App自動化項目實戰五、一線大廠簡歷六、測試開發DevOps體系七、常用自動化測試工具八、JMeter性能測試九、總結(尾部小驚喜) 前言 Linux之docker搭…

CDN(內容分發網絡)

CDN的全稱是 Content Delivery Network, 即內容分發網絡。CDN是構建在現有網絡基礎之上的智能虛擬網絡,依靠部署在各地的邊緣服務器,通過中心平臺的負載均衡、內容分發、調度等功能模塊,使用戶就近獲取所需內容,降低網絡擁塞&a…

詳談MongoDB的那些事

概念區分 什么是關系型數據庫 關系型數據庫(Relational Database)是一種基于關系模型的數據庫管理系統(DBMS)。在關系型數據庫中,數據以表格的形式存儲,表格由行和列組成,行表示數據記錄&…

神秘的ip地址8.8.8.8,到底是什么類型的DNS服務器?

下午好,我的網工朋友。 DNS,咱們網工配置網絡連接或者路由器時,高低得和這玩意兒打交道吧。 它是互聯網中用于將人類可讀的域名(例如http://www.example.com)轉換為計算機可理解的IP地址(例如192.0.2.1&a…

元宇宙核能發電VR模擬仿真實訓教學為建設新型電力系統提供重要支撐

隨著“碳達峰、碳中和”目標與建設新型能源體系的提出,在元宇宙環境下建設電力系統是未來發展的趨勢。以物聯網、區塊鏈、數字孿生、混合現實等技術為主要代表的元宇宙技術體系及其在電力和能源系統中的應用,將會促進智能電網的發展,為建設新…

Oracle 知識篇+分區表上的索引由global改為local注意事項

★ 知識點 二、知識點 ?Local型索引有如下優點 1.Only one index partition must be rebuilt when a maintenance operation other than SPLIT PARTITION or ADD PARTITION is performed on an underlying table partition. 2.The duration of a partition maintenance opera…

【uniapp】使用Vs Code開發uniapp:

文章目錄 一、使用命令行創建uniapp項目:二、安裝插件與配置:三、編譯和運行:四、修改pinia: 一、使用命令行創建uniapp項目: 二、安裝插件與配置: 三、編譯和運行: 該項目下的dist》dev》mp-weixin文件導入微信開發者…

unity vscode 代碼關聯 跳轉 BUG

一早打開電腦發現代碼關聯失效了,目測可能跟昨天一些插件更新有關 結論 就這貨,開了就沒法提示代碼關聯,估計預覽版全是BUG。 另一個坑 同期有個unity插件也是預覽版,“非常好使”,當場去世。評論點開有好幾個人說用…

替代阿托斯DLKZOR-T/DLHZO-TES直動式伺服閥比例閥

DLKZOR-T/DLKZOR-TES直動式伺服閥比例閥結構: 1,LVDT傳感器 2,比例電磁鐵 3,閥體 4,閥套 5,閥芯 6,復位彈簧 7,集成數字放大器 8,七芯插頭 9,RS232通…

[保研/考研機試] 楊輝三角形 西北工業大學復試上機題 C++實現

題目描述 Time Limit: 1000 ms Memory Limit: 256 mb 輸入n值,使用遞歸函數,求楊輝三角形中各個位置上的值。 輸入描述: 一個大于等于2的整型數n 輸出描述: 題目可能有多組不同的測試數據,對于每組輸入數據, 按題目的要求輸…

15.3.2 【Linux】系統的配置文件:/etc/crontab,/etc/cron.d/*

這個“ crontab -e ”是針對使用者的 cron 來設計的,如果是“系統的例行性任務”時, 該怎么辦呢?是否還是需要以 crontab -e 來管理你的例行性工作調度呢?當然不需要,你只要編輯/etc/crontab 這個文件就可以。有一點需…

arcpy創建基本要素:點和多點

目錄 創建Point點要素步驟一:創建空間參考步驟二:創建要素類步驟三:創建字段步驟四:創建記錄并插入位置信息 創建Multipoint多點要素步驟一:創建空間參考(同上)步驟二:創建要素類步驟…

機器學習終極指南:特征工程(01/2) — 第 -2 部分

西姆蘭吉特辛格 一、介紹 歡迎來到“機器學習終極指南”的第二部分。在第一部分中,我們討論了探索性數據分析 (EDA),這是機器學習管道中的關鍵步驟。在這一部分中,我們將深入研究特征工程,這是機器學習過程…

使用shift關鍵字,寫一個帶二級命令的腳本(如:docker run -a -b -c中的run)

省流:shift關鍵字 探索思路 最近有一個小小的需求,寫一個類似于docker run -a -b -c這樣的腳本,這個腳本名為doline,它本身可以執行(doline -a -b -c),同時又帶有幾個如run、init、start這樣的…

Qt 之 QWidget QLabel

文章目錄 前言一、Qt 工程介紹二、窗口組件1. QWidget 組件2. QLabel組件 總結 前言 一、Qt 工程介紹 Qt Creator 以工程項目的方式對源碼進行管理一個Qt Creator工程包含不同類型的文件 。 .pro 項目描述文件.pro.user用戶配置描述文件- .h頭文件.cpp源文件.ui界面描述文件資…

verilog 實現異步fifo

理論知識參考 異步FIFO_Verilog實現_verilog實現異步fifo_Crazzy_M的博客-CSDN博客 代碼 /* 位寬8bit, 位深8 */ module async_fifo#(parameter FIFO_DEPTH 8,parameter FIFO_WIDTH 8 ) (input rst_n,input wr_clk,input wr_en,input [FIFO_WIDTH - 1:0…