Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 替换空数据集_Python - Fatal编程技术网

Python 替换空数据集

Python 替换空数据集,python,Python,对不起,我同意这句话写得很糟糕: 第二个例子: 我在50多个数据集中有许多数据列(最多63列)。我只提取我需要的3列数据,并将其写入一个新的.csv文件。我的一些数据集没有第三列所需的数据。但没关系,我可以将其留空(或者插入另一个值,如“-”或其他任何值)。我不想打开所有的文件来找出哪些文件有什么。尝试从不存在的列中提取数据时收到的错误消息是: IndexError: list index out of range 我可以写一个循环来解决这个问题吗? 我对python真的是一个新手,在我看来这

对不起,我同意这句话写得很糟糕:

第二个例子: 我在50多个数据集中有许多数据列(最多63列)。我只提取我需要的3列数据,并将其写入一个新的.csv文件。我的一些数据集没有第三列所需的数据。但没关系,我可以将其留空(或者插入另一个值,如“-”或其他任何值)。我不想打开所有的文件来找出哪些文件有什么。尝试从不存在的列中提取数据时收到的错误消息是:

IndexError: list index out of range
我可以写一个循环来解决这个问题吗? 我对python真的是一个新手,在我看来这很容易,但当我试图真正做到这一点时,这是非常困难的


谢谢

根据错误消息,我猜您有一个类似于以下内容的列表列表(粗略简化):

您正在尝试执行以下操作:

对于xrange(4)中的行: 对于X范围(4)中的列: #还有别的吗? 打印数据[行][列]

然后您会得到错误,因为其中一个值在索引3处没有元素:

+------------------------+
| Index: | 0 | 1 | 2 | 3 |
+------------------------+
|Value:  | 1 | 2 | 3 |  <----- No value at index 3
+--------------------+ 
+------------------------+
|指数:0 | 1 | 2 | 3|
+------------------------+

|值:| 1 | 2 | 3 |我假设您正在执行以下操作:

for line in file:
    parts = line.split()
    blah = line[2]
有些台词不存在这些废话

您可以检查列表的长度:

if len(parts) > 2:
    blah = line[2]
else:
    blah = "" # or whatever

如果没有任何示例代码,很难做到更精确,但这可能是一个快速简便的解决方案。

在开始之前,您可以捕获异常并适当地处理它,而不是遍历所有数据:

try:
    a = list[57]
except IndexError:
    a = '-'

你在做什么同样的事?为什么要尝试从不存在的列中提取数据?如果我是你,我就不会那么做。。。(换句话说,你的问题写得很糟糕,很难理解。请重新写。)很感谢你提供了错误,但是没有样本数据,你很难弄清楚你在做什么什么?什么样的数据集?什么专栏?什么代码?什么输出文件?等待“>>>从pychic导入读取“ImportError:没有名为pychic的模块”。对不起,我更新了我的问题…很抱歉不,你已经更改了问题,但没有提供任何有用的信息。你是如何读取数据集的?什么Python代码?它们存储在什么中--数据类型,变量?通过提供示例代码,您可以轻松回答所有这些问题。
try:
    a = list[57]
except IndexError:
    a = '-'