Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.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 无法将数据帧转换为stata格式_Python_Python 3.x_Pandas_Dataframe - Fatal编程技术网

Python 无法将数据帧转换为stata格式

Python 无法将数据帧转换为stata格式,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,因此,我尝试将pandas数据帧转换为stata格式,如下所示: data_constr.to_stata('/Users/federiconutarelli/Desktop/First_work/PubMed/prediction_ATC/input_dummies') data_constr 是一个数据帧。我将第一列从object转换为string,并正确重命名了列,但当我点击run按钮时,它会引发一个错误: <ipython-input-454-edfc671f373c>

因此,我尝试将pandas数据帧转换为stata格式,如下所示:

data_constr.to_stata('/Users/federiconutarelli/Desktop/First_work/PubMed/prediction_ATC/input_dummies')

data_constr
是一个数据帧。我将第一列从object转换为string,并正确重命名了列,但当我点击run按钮时,它会引发一个错误:

<ipython-input-454-edfc671f373c> in <module>
      1 data_constr['prd'] = data_constr['prd'].astype(str)
----> 2 input_stata = data_constr.to_stata('/Users/federiconutarelli/Desktop/First_work/PubMed/prediction_ATC/input_dummies')

~/anaconda3/lib/python3.7/site-packages/pandas/util/_decorators.py in wrapper(*args, **kwargs)
    197                 else:
    198                     kwargs[new_arg_name] = new_arg_value
--> 199             return func(*args, **kwargs)
    200 
    201         return cast(F, wrapper)

~/anaconda3/lib/python3.7/site-packages/pandas/core/frame.py in to_stata(self, path, convert_dates, write_index, byteorder, time_stamp, data_label, variable_labels, version, convert_strl, compression)
   2191             variable_labels=variable_labels,
   2192             compression=compression,
-> 2193             **kwargs,
   2194         )
   2195         writer.write_file()

~/anaconda3/lib/python3.7/site-packages/pandas/io/stata.py in __init__(self, fname, data, convert_dates, write_index, byteorder, time_stamp, data_label, variable_labels, compression)
   2217         self._output_file: Optional[BinaryIO] = None
   2218         # attach nobs, nvars, data, varlist, typlist
-> 2219         self._prepare_pandas(data)
   2220 
   2221         if byteorder is None:

~/anaconda3/lib/python3.7/site-packages/pandas/io/stata.py in _prepare_pandas(self, data)
   2426         # Check columns for compatibility with stata, upcast if necessary
   2427         # Raise if outside the supported range
-> 2428         data = _cast_to_stata_types(data)
   2429 
   2430         # Replace NaNs with Stata missing values

~/anaconda3/lib/python3.7/site-packages/pandas/io/stata.py in _cast_to_stata_types(data)
    564 
    565     for col in data:
--> 566         dtype = data[col].dtype
    567         # Cast from unsupported types to supported types
    568         for c_data in conversion_data:

~/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py in __getattr__(self, name)
   5128             if self._info_axis._can_hold_identifiers_and_holds_name(name):
   5129                 return self[name]
-> 5130             return object.__getattribute__(self, name)
   5131 
   5132     def __setattr__(self, name: str, value) -> None:

AttributeError: 'DataFrame' object has no attribute 'dtype' ```

没有错误产生,所以我想知道我是否有熊猫的旧版本。 感谢您的帮助

谢谢,


费德里科

我也遇到过这个问题。我认为这与有关,不过你必须找出哪些列是导致你失败的原因。我也遇到过这个问题。我认为这与相关,不过您必须找到导致您失败的列。
for col in data:
     print(data[col].dtype)