首页
学习
活动
专区
圈层
工具
发布

c++ - 如何自动将强类型枚举转换为int?

c++ - 如何自动将强类型枚举转换为int?...foo(static_castint>(b::B2)) << std::endl; return 0; } a::LOCAL_A是强类型枚举试图实现的功能,但是有一个小的区别:普通枚举可以转换为整数类型...因此,有没有办法将强类型的枚举值转换为整数类型而无需强制转换?如果是,怎么办?...最佳答案 强类型枚举,旨在解决多个问题,而不仅仅是您在问题中提到的范围界定问题: 提供类型安全性,从而消除了通过整数提升而隐式转换为整数的情况。 指定基础类型。 提供强大的作用域。...因此,不可能将强类型的枚举隐式转换为整数,甚至是其基础类型-这就是这个想法。因此,您必须使用static_cast明确显示转换。

7.7K20

在Pandas中更改列的数据类型【方法总结】

先看一个非常简单的例子: a = [['a', '1.2', '4.2'], ['b', '70', '0.03'], ['x', '5', '0']] df = pd.DataFrame(a) 有什么方法可以将列转换为适当的类型...例如,上面的例子,如何将列2和3转为浮点数?有没有办法将数据转换为DataFrame格式时指定类型?或者是创建DataFrame,然后通过某种方法更改每列的类型?...另外pd.to_datetime和pd.to_timedelta可将数据转换为日期和时间戳。...软转换——类型自动推断 版本0.21.0引入了infer_objects()方法,用于将具有对象数据类型的DataFrame的列转换为更具体的类型。...astype强制转换 如果试图强制将两列转换为整数类型,可以使用df.astype(int)。 示例如下: ? ?

31.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    pandas 变量类型转换的 6 种方法

    对于变量的数据类型而言,Pandas除了数值型的int 和 float类型外,还有object ,category,bool,datetime类型。...,比如整型的有无符号signed/unsigned,和浮点float 下面例子中,s是一列数据,具有多种数据类型,现在想把它转换为数值类型。...int或者float pd.to_numeric(s) # 默认float64类型 pd.to_numeric(s, downcast='signed') # 转换为整型 4、转换字符类型 数字转字符类型非常简单...a = '[1,2,3]' type(a) >> str eval(a) >> [1, 2, 3] 5、转换时间类型 使用to_datetime函数将数据转换为日期类型,用法如下: pandas.to_datetime...默认情况下,convert_dtypes将尝试将Series或DataFrame中的每个Series转换为支持的dtypes,它可以对Series和DataFrame都直接使用。

    7K20

    【精心解读】用pandas处理大数据——节省90%内存消耗的小贴士

    Dataframe对象的内部表示 在底层,pandas会按照数据类型将列分组形成数据块(blocks)。...这对我们原始dataframe的影响有限,这是由于它只包含很少的整型列。 同理,我们再对浮点型列进行相应处理: 我们可以看到所有的浮点型列都从float64转换为float32,内存用量减少50%。...当一列只包含有限种值时,这种设计是很不错的。当我们把一列转换成category类型时,pandas会用一种最省空间的int子类型去表示这一列中所有的唯一值。...因此,将其转换成datetime会占用原来两倍的内存,因为datetime类型是64位比特的。将其转换为datetime的意义在于它可以便于我们进行时间序列分析。...总结 我们学习了pandas如何存储不同的数据类型,并利用学到的知识将我们的pandas dataframe的内存用量降低了近90%,仅仅只用了一点简单的技巧: 将数值型列降级到更高效的类型 将字符串列转换为类别类型

    11.4K50

    整理总结 python 中时间日期类数据处理与类型转换(含 pandas)

    有什么用途 为什么要把时间日期之类的数据转换为 pandas 自带的 datetime64 类型呢?...如何转换为 pandas 自带的 datetime 类型 在上方示例中,肉眼可见 a_col、b_col 这两列都是日期,但 a_col 的值其实是string 字符串类型,b_col的值是datatime.date...转换方法是一致的: # 字符串类型转换为 datetime64[ns] 类型 df['a_col'] = pd.to_datetime(df['a_col']) # datetime.date 类型转换为...datetime64[ns] 类型 df['b_col'] = pd.to_datetime(df['b_col']) # 时间戳(float) 类型转换为 datetime64[ns] 类型 df[...对整列每个值做上述匿名函数所定义的运算,完成后整列值都是字符串类型 pd.to_datetime() 把整列字符串转换为 pandas 的 datetime 类型,再重新赋值给该列(相当于更新该列)

    3.6K10

    pandas 处理大数据——如何节省超90%内存

    下面是 pandas 中常见数据类型的子类型: memory usage float int uint datetime bool object 1 bytes int8 uint8 bool...让我们创建一个原DataFrame的副本,将优化后的数值列赋值给原数据,看看节省了多少内存。...当pandas转换一列为 category 类型时,pandas 会使用最节省空间的 int 子类型表示每一列的唯一值。 ?...从上述数据中可以看到,一些列的数据只包含很少的唯一值,也就是说大多数值都是重复的。 先选择一列,看看将其转换为类别类型之后会如何。使用 day_of_week 列数据,只包含了7个唯一值。...如果转换所有列为 category 类型,那么内存使用量将极大的降低。首要问题是数值计算能力。

    7.3K30

    5招学会Pandas数据类型转化

    智能判断数据类型 5. 数据类型筛选 1. 加载数据时指定数据类型 一般来说,为了省事我都是直接pd.DataFrame(data)或pd.read_xx(filename)就完事了。...评分 float64 向往度 Int64 dtype: object 同样,在创建DataFrame类型数据时也可以通过dtype参数进行数据类型设定(案例是对全部字段进行设置...对于已经存在的数据,我们常用astype来转换数据类型,可以对某列(Series)也可以同时指定多列。...pd.to_xx 3.1. pd.to_datetime转化为时间类型 日期like的字符串转换为日期 时间戳转换为日期等 数字字符串按照format转换为日期 如果遇到无法转换的情况,默认情况下会报错...07-24 10:50:05 dtype: datetime64[ns] # 将起始时间加上 8小时 In [15]: pd.to_datetime(s, unit='s', origin=pd.Timestamp

    2.3K30

    3 个不常见但非常实用的Pandas 使用技巧

    在本文中,将演示一些不常见,但是却非常有用的 Pandas 函数。 创建一个示例 DataFrame 。...date 列包含 100 个连续日期,class 列包含 4 个以对象数据类型存储的不同值,amount 列包含 10 到 100 之间的随机整数。...1、To_period 在 Pandas 中,操 to_period 函数允许将日期转换为特定的时间间隔。使用该方法可以获取具有许多不同间隔或周期的日期,例如日、周、月、季度等。...例如在我们的 DataFrame 中,”分类“列具有 4 个不同值的分类变量:A、B、C、D。 默认情况下,该列的数据类型为object。...class_cum_sum int64 Pandas 还有一个“Category”数据类型,它比object数据类型消耗更少的内存。

    2.6K30

    Pandas DateTime 超强总结

    dtypes: float64(2), int64(2), object(1) memory usage: 1.6+ MB None 运行上面的语句会返回行数和列数、总内存使用量、每列的数据类型等...要将 datetime 列的数据类型从 string 对象转换为 datetime64 对象,我们可以使用 pandas 的 to_datetime() 方法,如下: df['datetime'] =...pandas to_datetime() 方法将存储在 DataFrame 列中的日期/时间值转换为 DateTime 对象。将日期/时间值作为 DateTime 对象使操作它们变得更加容易。...dtypes: datetime64[ns](1), float64(2), int64(2) memory usage: 1.6 MB None 现在 datetime 列的数据类型是...,其中 datetime 列的数据类型是 DateTime 对象 下面让我们对 datetime 列应用一些基本方法 首先,让我们看看如何在 DataFrame 中返回最早和最晚的日期。

    7K20
    领券