python - 如何在 pandas 中读取数据框中的 2 列并返回数据列表列表?
问题描述
我刚开始学习熊猫,我有一个看起来像的数据框
Date Average Volume
2013-02-07 400 4100
2013-02-08 389 3400
2013-02-23 380 3100
如果用户说他们想要来自第一列的信息(我在这里指的是平均值,我不包括日期作为它的常数),我希望它返回
['2013-02-07', 400]
['2013-02-08', 389]
['2013-02-23', 380]
如果他们从第二列询问信息,它将以相同的格式返回日期和数量信息。
data_list(file_object,column_number)
inp = int(input('Which column?' ))
if inp = 1:
df['Average'].iloc[0:]
if inp = 2:
df['Volume'].iloc[0:]
这将返回用户想要的列,但我怎样才能以上面请求的格式返回它?
解决方案
您可以使用values.tolist
>>> df[['Date','Average']].values.tolist()
[['2013-02-07', 400], ['2013-02-08', 389], ['2013-02-23', 380]]
如果你想要一个生成器,你可以使用 map
>>> map(list, df[['Date','Average']].values)
<map object at 0x7f3fd47023c8>
>>>
>>> [*map(list, df[['Date','Average']].values)]
[['2013-02-07', 400], ['2013-02-08', 389], ['2013-02-23', 380]]
推荐阅读
- kubernetes - 与服务器 xxx:6443 的连接被拒绝 - 您是否指定了正确的主机或端口?Kubernetes
- amazon-iam - EKS 集群身份验证问题:用于创建 EKS 集群的用户或角色已从 AWS IAM 中删除
- c++ - 如何使用 Visual Studio C/C++ 编译器 (cl.exe) 预处理我的 Objective-C 代码?
- python - DataFrame.plot() 错误地将东部时间转换为 UCT
- reactjs - 我正在尝试向我的反应客户端添加代理,但出现 404 错误
- android - 如何在高于默认的 BottomNavigationView 上添加指示器?
- excel - 如何改进我的当前区域选择器?
- ruby-on-rails - 在更改我的开发数据库之前我应该知道什么?
- angular - “如果没有描述,'@param' 在 TypeScript 代码中是多余的。” TSLint 错误?
- elasticsearch - Elasticsearch 字段数据与字段映射