ПРИМЕЧАНИЕ:
blockquote>pd.convert_objects
теперь устарел. Вы должны использоватьpd.Series.astype(float)
илиpd.to_numeric
, как описано в других ответах.Это доступно в 0.11. Принудительное преобразование (или set to nan) Это будет работать, даже когда
astype
завершится с ошибкой; его также серии по серии, поэтому он не будет конвертировать, скажем, полный столбец строкIn [10]: df = DataFrame(dict(A = Series(['1.0','1']), B = Series(['1.0','foo']))) In [11]: df Out[11]: A B 0 1.0 1.0 1 1 foo In [12]: df.dtypes Out[12]: A object B object dtype: object In [13]: df.convert_objects(convert_numeric=True) Out[13]: A B 0 1 1 1 1 NaN In [14]: df.convert_objects(convert_numeric=True).dtypes Out[14]: A float64 B float64 dtype: object
Вы должны заключить user
в []
, в противном случае он обрабатывается как вызов функции:
select asuers.[user]
from (select distinct [user] from test where product = 'a') ausers
cross apply (select distinct [user] from test) busers