python - TypeError:输入必须是元组的列表/序列
问题描述
所以现在我认为这是正确的顺序
我注意到 usingset_value
是更新/修改中特定单元格的最佳方法dataframe
,因此我尝试使用此代码
values.index = pd.MultiIndex.from_tuples(values.index)
ext_sites.set_value(values.index, 'Pending ', 'aaaaaaaaaaaaaaaaaa')
顺便说一句,我曾经将tuple
值转换为MultiIndex
但我发现这个错误
Traceback (most recent call last):
File "C:/Users/DELL/PycharmProjects/Gov-Trac-Tool/updateMyDF.py", line 34, in <module>
values.index = pd.MultiIndex.from_tuples(values.index)
File "C:\Users\DELL\PycharmProjects\MyALLRefProf\venv\lib\site-packages\pandas\core\indexes\multi.py", line 383, in from_tuples
raise TypeError('Input must be a list / sequence of tuple-likes.')
TypeError: Input must be a list / sequence of tuple-likes.
当我像这样指定行索引时它是如何工作的
ext_sites.set_value(800, 'Pending ', 'aaaaaaaaaaaaaaaaaa')
那我走对了吗?
解决方案
您的代码执行未达到ext_sites.set_value(...)。您的代码中的错误发生在前一行:
values.index = pd.MultiIndex.from_tuples(values.index)
什么清楚地写在你的 Traceback 中。
查看pandas.MultiIndex.from_tuples的文档。它包含:
tuples : list / sequence of tuple-likes
显然values.index
不是任何类似元组的列表/序列,所以Pandas抱怨这一点。也许你有一个“正常”的索引(不是 MultiIndex)?
顺便说一句:你的变量有 name values
。选择与方法名重叠的变量名是一个坏习惯(列名也是如此)。使用其他名称。
另一个坏习惯:列名不应包含尾随空格,就像'Pending '
在您的代码中一样。它们也不应该包含初始空格。
推荐阅读
- python - 在 Pyspark 中,如何检查文本文件中的连续单词是否以相同的字母开头?
- c - 为什么变量声明的位置很重要?
- java - Mockito - 仅针对特定参数的模拟方法调用
- javascript - 如何在 Jest 中使用 axios 模拟 API 调用?
- python - Python字符串搜索:如何找到完全匹配,而不是与其中包含搜索字符串的字符串匹配
- magento2 - Magento 2:销售管理中的地址不完整
- vb.net - 使用 Path.GetFullPath 获取当前工作目录而不是文件名目录
- react-native - 在 React Native 中同时录制单独的音频(wav)和视频(任何)文件?
- nuget - 通过 powershell 的 nuget 命令部署 nuget 包时出现校验和问题
- python - 用python求解大量方程