python-3.x - ipywidgets - widgets.FileUpload,更新CSV文件读取CSV文件
问题描述
我正在使用 jupyterhub 并托管.ipynb
文件并托管在服务器上。我有从 localdrive 文件上传 CSV 并为其他数据帧任务读取相同内容的用例。
uploader = widgets.FileUpload(
accept='*.csv', # Accepted file extension e.g. '.txt', '.pdf', 'image/*', 'image/*,.pdf'
multiple=False # True to accept multiple files upload else False
)
display(uploader)
[input_file] = uploader.value
print(input_file)
pd.read_csv(input_file)
print(input_file)
- 正在打印Test.csv
我可以打印的 CSV 文件名,[input_file]
但 `pd.read_csv(input_file)' 抛出错误
FileNotFoundError: [Errno 2] No such file or directory: 'Test.csv'
不确定 CSV 是否已上传,我如何读取该数据。请帮忙。
解决方案
我没有你确切的 ipywidgets 版本,但你可以试试这个:
input_file = list(uploader.value.values())[0]
content = input_file['content']
content = io.StringIO(content.decode('utf-8'))
df = pd.read_csv(content)
推荐阅读
- sql - Hive Regexp 用多个字符串替换检查和替换
- graphql - 使用代码优先方法在 GraphQL 中支持模式指令
- python - 我正在抓取具有相似词典的链接。如何区分每个字典?
- json - 基于名称提取 id 的 JSON 查询
- python - 如何使用 Google OR 工具在 VRPTW 中添加分离、设置惩罚和防止某些位置被丢弃?
- html - CSS Grid:同一页面中不同网格容器的相同内容名称和区域名称
- javascript - discord.js 参数 startsWith 不能是正则表达式
- regex - 仅在下一次关闭时移除左括号
- html - 如何交换两个 HTML 的选项值
- vue.js - 每当页面更改时显示微调器(预加载器/加载指示器)并在 Vue Gridsome 中加载所有资产时隐藏