data = pd.read_excel('newskin.xlsx',header=None,names=['A','B','C','D','E']) # 将价格数据和稀有度数据分别存储到price和rarity列表中 price = data['E'].tolist() rarity = data['C'].tolist() unique_rarity = list(set(rarity)) data_rarity = [] for r in unique_rarity: data_rarity = [x[2] for x in data if x[4] == r]优化这段代码
时间: 2023-11-28 16:51:37 浏览: 43
可以使用Pandas的groupby方法和apply方法来优化这段代码:
```
import pandas as pd
data = pd.read_excel('newskin.xlsx', header=None, names=['A', 'B', 'C', 'D', 'E'])
unique_rarity = list(set(data['C'].tolist()))
data_rarity = data.groupby('C').apply(lambda x: x['E'].tolist()).to_dict()
```
这样可以将稀有度作为索引,并将每个稀有度对应的价格数据存储为一个列表,存储在字典中。这样可以更快速地获取每个稀有度对应的价格数据。
相关问题
df = pd.read_excel('newskin.xlsx',header=None,names=['A','B','C','D','E'])什么意思
这行代码使用 Pandas 库中的 `read_excel` 函数从名为 "newskin.xlsx" 的 Excel 文件中读取数据,并将其存储在名为 `df` 的 DataFrame 对象中。其中,`header=None` 表示 Excel 文件中没有列名,`names=['A','B','C','D','E']` 指定了 DataFrame 对象中每列的名称。具体来说,这个 DataFrame 对象有五列,分别命名为 A、B、C、D、E。
data = pd.read_excel('newskin.xlsx',header=None,names=['A','B','C','D','E']) # 将价格数据和稀有度数据分别存储到price和rarity列表中 price = [x[3] for x in data] rarity = [x[1] for x in data]优化这段代码
可以使用pandas的DataFrame的方法直接获取'A','B','C','D','E'这5列数据,然后再将价格数据和稀有度数据分别存储到price和rarity列表中,代码如下:
```
import pandas as pd
data = pd.read_excel('newskin.xlsx', usecols=['A', 'B', 'C', 'D', 'E'])
price = data['D'].tolist()
rarity = data['B'].tolist()
```
这样做的好处是可以避免使用循环遍历整个Excel文件,提高代码的执行效率。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)