读取csv文件 报错"None of ['uin(已加密)'] are in the columns
时间: 2024-05-27 17:09:19 浏览: 22
这个错误提示说明你的代码中使用了一个列名 'uin(已加密)',但是该列名在你读取的 CSV 文件中不存在。
请检查以下几点:
1. 确认你读取的 CSV 文件路径和文件名是否正确,可以使用绝对路径或相对路径来读取文件。
2. 确认你读取的 CSV 文件中是否包含名为 'uin(已加密)' 的列,可以打开文件并查看列名。
3. 确认你读取 CSV 文件时所使用的分隔符是否正确,默认情况下 pandas.read_csv() 函数会使用逗号作为分隔符,但是如果你的 CSV 文件使用其他分隔符,需要在函数中指定。
如果以上几点都没有问题,那么请提供你的代码和 CSV 文件,以便更好地帮你解决问题。
相关问题
优化如下代码 import pandas as pd df=pd.read_csv('20200301.csv') uin=df['uin(已加密)'] var=[] for i in uin: var.append(((df[df['uin(已加密)']==i].groupby('roleid(已加密)')['在线时长(秒)'].mean()).var())/60) s = pd.Series(var, index=uin) s.to_csv('result.csv')
可以使用 Pandas 的 apply 方法来避免使用 for 循环,可以更快地完成计算。优化后的代码如下:
```python
import pandas as pd
df = pd.read_csv('20200301.csv')
var = df.groupby(['uin(已加密)', 'roleid(已加密)'])['在线时长(秒)'].mean().groupby('uin(已加密)').var() / 60
s = var.rename('var').to_frame().set_index('uin(已加密)')
s.to_csv('result.csv')
```
首先,使用 groupby 方法对数据进行聚合,计算每个用户在每个角色下的平均在线时长。然后,再次使用 groupby 方法计算每个用户的在线时长方差,并将结果除以 60。最后,将结果转换为 DataFrame,并设置索引为 uin(已加密),并将其保存为 CSV 文件。
利用python爬取QQ音乐排行榜的数据,并存入csv文件的代码
好的,下面是利用Python爬取QQ音乐排行榜并存入CSV文件的代码:
```python
import requests
import csv
url = "https://c.y.qq.com/v8/fcg-bin/fcg_v8_toplist_cp.fcg?g_tk=5381&uin=0&format=json&inCharset=utf-8&outCharset=utf-8¬ice=0&platform=h5&needNewCode=1&tpl=3&page=detail&type=top&topid=4"
header = {
"Referer": "https://y.qq.com/n/yqq/toplist/4.html",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}
response = requests.get(url, headers=header)
json_data = response.json()
song_list = json_data['songlist']
with open('QQ音乐排行榜.csv', 'w', newline='', encoding='utf-8') as file:
writer = csv.writer(file)
writer.writerow(['歌曲名称', '歌手', '专辑'])
for song in song_list:
song_name = song['data']['songname']
singer = song['data']['singer'][0]['name']
album = song['data']['albumname']
writer.writerow([song_name, singer, album])
print('已成功爬取QQ音乐排行榜并存入CSV文件')
```
在以上代码中,我们首先将需要爬取的URL地址存储在变量中,并设置请求头Referer和User-Agent以模拟浏览器访问。然后使用requests库发送get请求,并将响应数据转为json格式。接着我们需要提取排行榜中的歌曲信息并进行存储,这里我们选择将数据存入CSV文件中。最后输出爬取成功的提示信息。
注意:未来如果该网站做了反爬虫的处理,以上代码可能会失效。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)
![](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)
![](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)
![](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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)