精华内容
下载资源
问答
  • 例如用户收入、年龄、净资产、消费频次、可支配收入等,它们都属于数值型数据。在MySQL数据库中,关于常用数值型数据描述如下表。数值型数据可以细分为整数型和浮点型(即实数型)两类,表中前5种类型均为整数...

    数值型是指变量或值以数字的形式呈现,通常情况下这些数字在经过某种四则运算后,也是具有含义的。例如用户的收入、年龄、净资产、消费频次、可支配收入等,它们都属于数值型数据。在MySQL数据库中,关于常用数值型数据的描述如下表。

    93b717c16955d01caf4a3ee9848d0622.png

    数值型数据可以细分为整数型和浮点型(即实数型)两类,表中的前5种类型均为整数型,而后两种类型为浮点型。关于表中的几种数值类型,有两点需要说明:

    1)如果在实际应用中,限定变量为非负的数值型时,则必须在数据类型前面加入关键词UNSIGNED(如非负的微小整型,需要表示为UNSIGNED TINYINT)。

    2)如果读者使用DECIMAL表示浮点型时,需要指定参数n和k的值,其中n表示浮点数值中所包含的所有数字个数,k表示浮点数值中小数位的数字个数(例如DECIMAL(5, 2),表示数值最多包含5个数字,其中小数位占两位)。换句话说,DECIMAL(n,k)所表示的数值范围为[负n-k个9点k个9,正n-k个9点k个9](例如DECIMAL(5,2),所表示的数值范围为[-999.99,999.99])。

    展开全文
  • 变量

    2020-08-12 22:04:41
    变量 变量是什么:就是可以变化量 Java是一种强类型语言,每个变量都必须声明其类型 Java变量是程序中最基本存储单元,其要素包括变量名,变量类型和作用域 ...不初始化默认值为:数值型0或0.0、字符型

    变量

    • 变量是什么:就是可以变化的量
    • Java是一种强类型语言,每个变量都必须声明其类型
    • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
    • 数据类型 变量名 = 值;

    注意事项

    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型
    • 变量名必须是合法的标识符
    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

    变量作用域

    • 类变量:在类型前面加static关键词修饰
    • 实例变量:从属于对象,必须要实例对象才能够调用,可以不初始化值。不初始化默认值为:数值型0或0.0、字符型0000、布尔型false。除此基本类型之外其余默认值都为null
    • 局部变量:只在方法里面有效,必须声明和初始化值
    public class Variable{
      static int allClicks = 0; // 类变量
      String str = "Hello World!"; // 实例变量
      public void method(){
        int i = 0; // 局部变量
        
        //实例变量需要创建对象来调用成员变量
        Variable var = new Variable();
        var.str = "周宏全";
        
        //类变量可以直接调用
        System.out.println(allClicks);
      }
    }
    

    常量

    • 常量(Constent):初始化(initialize)后不能再改变的值,不会变化的值。
    • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变
    • 常量名一般使用大写字符
    final 常量名 =;
    final double PI = 3.14;
    

    变量的命名规范

    • 所有变量、方法、类名:见名知意

    • 类成员变量:首字母小写和驼峰原则(monthSalary)

    • 局部变量:首字母小写和驼峰原则(monthSalary)

    • 方法名:首字母小写和驼峰原则[run()、runRun()]

    • 常量:大写字母和下划线(MAX_VALUE)

    • 类名:首字母大写和驼峰原则(Man、GoodMan)

    展开全文
  • // 这是一个数值型 var choose = true ; //这是一个布尔值 var time = '2018年'; //这是一个字符型 运行完毕之后, 变量就确定了数据类型。 JavaScript是弱数据类型,变量是没有固定数据类型, 总之,你给变量...

    在代码运行时,由 JS引擎 根据 = 右边 变量值的数据类型 来判断的。

    var age = 10; //  这是一个数值型
    var choose = true ; //这是一个布尔值
    var time = '2018年'; //这是一个字符型
    

    运行完毕之后, 变量就确定了数据类型。

    JavaScript是弱数据类型,变量是没有固定数据类型的, 总之,你给变量一个什么值,它就是什么数据类型的变量。

    展开全文
  • 数值型变量不同,分类变量的值是不能被排序的,故而又称为无序变量。 one-hot编码 独热编码(one-hot encoding)通常用于处理类别间不具有大小关系的特征。独热编码使用一组比特位表示不同的类别,每个比特位表示...

    分类变量是表示类别或标记的。与数值型变量不同,分类变量的值是不能被排序的,故而又称为无序变量。

    one-hot编码

    独热编码(one-hot encoding)通常用于处理类别间不具有大小关系的特征。独热编码使用一组比特位表示不同的类别,每个比特位表示一个特征。因此,一个可能有k个类别的分类变脸就可以编码成为一个长度为k的特征向量。若变量不能同时属于多个类别,那这组值就只有一个比特位是‘开’的。

    独热编码的优缺点:

    1. 独热编码解决了分类器不好处理属性数据的问题,在一定程度上也起到了扩充特征的作用。它的值只有0和1,不同的类型存储在垂直的空间。
    2. 当类别的数量很多时,特征空间会变得非常大。在这种情况下,一般可以用PCA来减少维度。而且one hot encoding+PCA这种组合在实际中也非常有用。使用稀疏向量节省空间配合特征选择降低维度
    import pandas as pd
    from sklearn import linear_model
    
    df = pd.DataFrame({'city':['SF','SF','SF','NYC','NYC','NYC','Seattle','Seattle','Seattle'],
                      'Rent':[3999, 4000, 4001, 3499, 3500, 3501, 2499, 2500, 2501]})
    
    df['Rent'].mean()
    
    3333.3333333333335
    
    #将分类变量转换为one-hot编码并拟合一个线性回归模型
    one_hot_df = pd.get_dummies(df, prefix=['city'])
    one_hot_df
    
    Rent city_NYC city_SF city_Seattle
    0 3999 0 1 0
    1 4000 0 1 0
    2 4001 0 1 0
    3 3499 1 0 0
    4 3500 1 0 0
    5 3501 1 0 0
    6 2499 0 0 1
    7 2500 0 0 1
    8 2501 0 0 1
    model = linear_model.LinearRegression()
    model.fit(one_hot_df[['city_NYC', 'city_SF', 'city_Seattle']],
             one_hot_df['Rent'])
    model.coef_                         #获取线性回归模型的系数
    
    array([ 166.66666667,  666.66666667, -833.33333333])
    
    model.intercept_                      #获取线性回归模型的截距
    
    3333.3333333333335
    
    model.score(one_hot_df[['city_NYC', 'city_SF', 'city_Seattle']],
             one_hot_df['Rent'])          #获取模型的拟合优度R2
    
    0.9999982857172245
    

    使用one-hot编码时,截距表示目标变量rent的整体均值,每个线性系数表示相应城市的Rent均值与整体Rent均值有多大

    虚拟编码

    虚拟编码在进行表示时只使用k-1个特征,除去了额外的自由度。没有被使用的那个特征通过一个全零向量来表示,它称为参照类。虚拟编码和one-hot都可以通过pandas.get_dummies实现

    #用虚拟编码训练一个线性回归模型,指定drop_first标志来生成虚拟编码
    
    dummy_df = pd.get_dummies(df, prefix=['city'], drop_first=True)
    dummy_df
    
    Rent city_SF city_Seattle
    0 3999 1 0
    1 4000 1 0
    2 4001 1 0
    3 3499 0 0
    4 3500 0 0
    5 3501 0 0
    6 2499 0 1
    7 2500 0 1
    8 2501 0 1
    model.fit(dummy_df[['city_SF', 'city_Seattle']], dummy_df['Rent'])
    model.coef_
    
    array([  500., -1000.])
    
    model.intercept_
    
    3500.0
    
    model.score(dummy_df[['city_SF', 'city_Seattle']], dummy_df['Rent'])
    
    0.9999982857172245
    

    使用虚拟编码时,偏差系数表示相应变量y对于参照类的均值,该例中参照类是city_NYC。第i个特征的系数等于第i个类别的均值与参照类均值的差。

    效果编码

    效果编码与虚拟编码非常相似,区别在于参照类的用全部由-1组成的向量表示的

    effect_df = dummy_df.copy()
    effect_df.loc[3:5, ['city_SF','city_Seattle']]= -1.0
    effect_df
    
    Rent city_SF city_Seattle
    0 3999 1.0 0.0
    1 4000 1.0 0.0
    2 4001 1.0 0.0
    3 3499 -1.0 -1.0
    4 3500 -1.0 -1.0
    5 3501 -1.0 -1.0
    6 2499 0.0 1.0
    7 2500 0.0 1.0
    8 2501 0.0 1.0
    model.fit(effect_df[['city_SF', 'city_Seattle']], effect_df['Rent'])
    
    LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None, normalize=False)
    
    model.coef_
    
    array([ 666.66666667, -833.33333333])
    
    model.intercept_
    
    3333.3333333333335
    
    model.score(effect_df[['city_SF', 'city_Seattle']], effect_df['Rent'])
    
    0.9999982857172245
    

    处理大型分类变量

    特征散列化

    散列函数是一种确定性函数,它可以将一个可能无界的整数映射到一个有限的整数范围【1,m】中。

    import pandas as pd
    import json
    js = []
    with open('yelp_academic_dataset_review.json') as f:
        for i in range(10000):
            js.append(json.loads(f.readline()))
    f.close()
    
    review_df = pd.DataFrame(js)
    
    # 定义m为唯一的business_id的数量
    m = len(review_df.business_id.unique())
    
    m
    
    4174
    
    from sklearn.feature_extraction import FeatureHasher
    
    h = FeatureHasher(n_features = m , input_type='string')
    f = h.transform(review_df['business_id'])
    
    review_df['business_id'].unique().tolist()[0:5]
    
    ['9yKzy9PApeiPPOUJEtnvkg',
     'ZRJwVLyzEJq1VAihDhYiow',
     '6oRAC4uyJCsJl1X0WZpVSA',
     '_1QQZuf4zZOyFCvXc0o6Vg',
     '6ozycU1RpktNG2-1BroVtw']
    
    f.toarray()
    
    array([[0., 0., 0., ..., 0., 0., 0.],
           [0., 0., 0., ..., 0., 0., 0.],
           [0., 0., 0., ..., 0., 0., 0.],
           ...,
           [0., 0., 0., ..., 0., 0., 0.],
           [0., 0., 0., ..., 0., 0., 0.],
           [0., 0., 0., ..., 0., 0., 0.]])
    
    from sys import getsizeof
    
    print('Our pandas Series, in bytes: ', getsizeof(review_df['business_id']))
    print('Our hashed numpy array, in bytes: ', getsizeof(f))
    
    Our pandas Series, in bytes:  790152
    Our hashed numpy array, in bytes:  56
    

    分箱计数

    import pandas as pd
    
    df = pd.read_csv('train_subset.csv')
    
    len(df['device_id'].unique()) #查看训练集中有多少个唯一的特征
    
    1075
    
    df.head()
    
    id click hour C1 banner_pos site_id site_domain site_category app_id app_domain ... device_type device_conn_type C14 C15 C16 C17 C18 C19 C20 C21
    0 1000009418151094273 0 14102100 1005 0 1fbe01fe f3845767 28905ebd ecad2386 7801e8d9 ... 1 2 15706 320 50 1722 0 35 -1 79
    1 10000169349117863715 0 14102100 1005 0 1fbe01fe f3845767 28905ebd ecad2386 7801e8d9 ... 1 0 15704 320 50 1722 0 35 100084 79
    2 10000371904215119486 0 14102100 1005 0 1fbe01fe f3845767 28905ebd ecad2386 7801e8d9 ... 1 0 15704 320 50 1722 0 35 100084 79
    3 10000640724480838376 0 14102100 1005 0 1fbe01fe f3845767 28905ebd ecad2386 7801e8d9 ... 1 0 15706 320 50 1722 0 35 100084 79
    4 10000679056417042096 0 14102100 1005 1 fe8cc448 9166c161 0569f928 ecad2386 7801e8d9 ... 1 0 18993 320 50 2161 0 35 -1 157

    5 rows × 24 columns

    def click_counting(x, bin_column):
        clicks = pd.Series(
            x[x['click'] > 0][bin_column].value_counts(), name='clicks')
        no_clicks = pd.Series(
            x[x['click'] < 1][bin_column].value_counts(), name='no_clicks')
    
        counts = pd.DataFrame([clicks, no_clicks]).T.fillna('0')
        counts['total'] = counts['clicks'].astype(
            'int64') + counts['no_clicks'].astype('int64')
    
        return counts
    
    
    def bin_counting(counts):
        counts['N+'] = counts['clicks'].astype('int64').divide(
            counts['total'].astype('int64'))
        counts['N-'] = counts['no_clicks'].astype('int64').divide(
            counts['total'].astype('int64'))
        counts['log_N+'] = counts['N+'].divide(counts['N-'])
    
        #    If we wanted to only return bin-counting properties, we would filter here
        bin_counts = counts.filter(items=['N+', 'N-', 'log_N+'])
        return counts, bin_counts
    
    bin_column = 'device_id'
    device_clicks = click_counting(df.filter(items = [bin_column, 'click']), bin_column)
    device_all, device_bin_counts = bin_counting(device_clicks)
    
    len(device_bin_counts)
    
    1075
    
    device_all.sort_values(by = 'total', ascending = False).head(4)
    
    clicks no_clicks total N+ N- log_N+
    a99f214a 1561 7163 8724 0.178932 0.821068 0.217925
    c357dbff 2 15 17 0.117647 0.882353 0.133333
    a167aa83 0 9 9 0.000000 1.000000 0.000000
    3c0208dc 0 9 9 0.000000 1.000000 0.000000
    from sys import getsizeof
    
    print('Our pandas Series, in bytes: ', getsizeof(df.filter(items=['device_id', 'click'])))
    print('Our bin-counting feature, in bytes: ', getsizeof(device_bin_counts))
    
    Our pandas Series, in bytes:  730152
    Our bin-counting feature, in bytes:  95699
    

    参考:
    爱丽丝·郑、阿曼达·卡萨丽,精通特征工程

    展开全文
  • 变量就是在程序运行期间其值可以...C语言中变量类型包括整型变量、实型变量和字符型变量。一、整型变量 整型变量是用来存储整型数值的变量。整型变量可以分为有符号基本整型[signed] int、无符号基本整型unsigne...
  • 这里讲静态局部变量c的生存期从它所在的函数开始,书上讲“如果一个变量值在某一时刻是存在的,则认为这一时刻属于变量的生存期,获称该变量在此时刻“存在”“,似乎是说这个静态局部变量从它所在的函数开始才...
  • 变量的类型转换,一般情况是JS自动转换的,但也有些时候需要手动转换。 1、其它类型转成布尔型 函数和方法的区别 Boolean(a) //函数是可以...3、其它类型转成数值型 转载于:https://www.cnblogs.com/yd09...
  • 同时静态变量在不初始化情况下系统会自动为变量赋值,数值型赋值为零,字符型赋值为空。 非静态变量只有在定义时才会被分配内存,因此使用未声明或者声明了未定义的变量程序都会运行失败。未声明时编译时失败,...
  • 选择题 1、下列属于合法的 Java 标识符是...3、下列可以表示数值型数据的数据类型是?(多选)ABD A. byte B. float C. boolean D. long 4、关于数据类型的说法错误的是?B A. 数据类型分为基本数据类型和引用数据类型
  • 一、选择 下列属于合法的 Java 标识符是?(多选)ABF A. $value B.... 下列可以表示数值型数据的数据类型是?(多选)ABD A. byte B. float C. boolean D. long 关于数据类型的说法错误的是?B
  • 一、数据基本类型 1.基础类型 (1)字符型 单字符:用char表示 ‘ ?’ 引号内必须有字符,且只能有一个 字符串:用String(S必须大写) " * " 可以有0~...(2)数值型 整数 字节: byte 1 -128~+127 短整
  • java基础 常量与变量

    2020-06-05 09:16:43
    Boolean表示布尔型数据,不属于数值型数据 1个字节占8位 boolean byte 1个字节 short char 2个字节 int float 4个字节 long double 8个字节 字面值和变量声明 浮点型字面值 局部变量的存储方式 局部变
  • 1.下列属于合法Java标识符是?(多选) A.$valueB.VoldC.classD.1abcE.myvalueF.void_class ...3.下列可以表示数值型数据数据类型是?(多选) A.byteB.floatC.booleanD.long AD 4.关于数据类型说法错...
  • 常量分为数值型常量(即常数)和字符型常量。 例如:12,-5,0为整形常量,6.2,-2.3为实型常量; 包含在两个单撇号之间字符为字符常量,如’a’,’x’。 注: ①字符常量只包括一个字符,如’AB’是不合法; ...
  • 常量与变量

    2020-06-29 17:23:18
    练习一 一、选择 1.下列属于合法的 Java 标识符是?...3.下列可以表示数值型数据的数据类型是?(多选)ABD A. byte B. float C. boolean D. long 4.关于数据类型的说法错误的是?B A. 数据类型分为基本数据类型和
  • JAVA常量与变量

    2020-08-03 18:19:42
    练习一 1、选择下列属于合法的 Java 标识符是?...3、下列可以表示数值型数据的数据类型是?(B) A. byte B. float C. boolean D. long 4、关于数据类型的说法错误的是?(B) A. 数据类型分为基本数
  • 实例变量:位于方法外面、类里面,引用是使用new关键字,不需要初始化,如没有初始化输出时输出默认值,数值型默认输出为0,布尔型默认输出为false,除八个基本类型外,其余默认值都为null。 类变量:声明时使用...
  • 数据类型转换就是将一种数据类型...其中String、Number、Boolean、null、undefined属于基本数据类型而Object属于引用数据类型。 常有 3 种方式转换: 转换为字符串类型 转换成数字 转换成布尔类型 JS是弱类型语言
  • Java常量与变量 练习

    2020-06-29 15:45:23
    选择 1、下列属于合法的 Java ...3、下列可以表示数值型数据的数据类型是?(多选) A. byte B. float C. boolean D. long 4、关于数据类型的说法错误的是? A. 数据类型分为基本数据类型和引用数据类型 B. 数组属于
  • Java常量与变量练习

    2020-06-29 23:49:37
    练习 一、选择 下列属于合法的 Java 标识符是?(多选)AC ...下列可以表示数值型数据的数据类型是?(多选)ABD A. byte B. float C. boolean D. long 关于数据类型的说法错误的是?B A. 数据类型分为
  • java变量和常量练习

    2020-04-01 14:05:04
    一、选择 下列属于合法 Java 标识符是?(bc) A. $value B. Void C. class D. 1abc E....下列哪一个选项不是Java关键字?...下列可以表示数值型数据数据类型是?(ad) A. byte B. float C...
  • 2020-6-29 Java常量与变量练习 一、选择 下列属于合法 Java 标识符是?(多选) ABF ...下列可以表示数值型数据数据类型是?(多选) ABD A. byte B. float C. boolean D. long 关于数据类型说法错
  • 一、选择 下列属于合法 Java 标识符是?(多选)ABF A. $value B. Void C. class D. 1abc E....下列哪一个选项不是Java关键字?...下列可以表示数值型数据数据类型是?(多选)ABD A. byte B. floa...
  • 变量与常量部分 一、选择 1.下列属于合法的 Java 标识符是?(多选) ABF ...3.下列可以表示数值型数据的数据类型是?(多选)ABD A. byte B. float C. boolean D. long 4.关于数据类型的说法错误的是?B A.
  • 一、选择 1.下列属于合法的 Java 标识符是?(多选)ABF ...3.下列可以表示数值型数据的数据类型是?(多选)ABD A. byte B. float C. boolean D. long 4.关于数据类型的说法错误的是?B A. 数据类型分为基本
  •  1) SQL中常量和C语言以及其它语言中常量定义完全相同,就是一些字面值,比如15、'xyz'就分别是数值型字面值和字符串型字面值,它们都属于常量;  2) 而变量是可以定义在SQL脚本中,但是我们平时写查询语句...
  • 一、选择 1. 下列属于合法 Java 标识符是?ABF A. $value B. Void C. class D. 1abc E.... 2. 下列哪一个选项不是Java关键字?...3. 下列可以表示数值型数据数据类型是?ABD A. byte B. float C. bo...
  • 一、选择 下列属于合法的 Java 标识符是?(多选) A. $value B....下列可以表示数值型数据的数据类型是?(多选) A. byte B. float C. boolean D. long 选择:ABD 关于数据类型的说法错误的是

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 144
精华内容 57
关键字:

属于数值型变量的是