Python 无法将数据帧转换为stata格式
因此,我尝试将pandas数据帧转换为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>
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)