In [5]:

    import pandas as pd
    from sklearn.preprocessing import StandardScaler
    from sklearn.model_selection import train_test_split
    #读取一个Excel文件，并将读取到的数据存储在变量data中
    data = pd.read_excel('大学生低碳生活行为的影响因素数据集.xlsx')
    #打印出数据集的前5行
    print(data.head())

    #处理数据集中的缺失值
    initial_row_count = data.shape[0]
    data = data.dropna()
    final_row_count = data.shape[0]
    print(f'处理后数据行数: {final_row_count}, 删除的行数: {initial_row_count - final_row_count}')

    #删除重复行
    data =data.drop_duplicates()

    from sklearn.preprocessing import StandardScaler
    numerical_features = ['4.您的月生活费○≦1,000元   ○1,001-2,000元   ○2,001-3,000元   ○≧3,001元']
    scaler = StandardScaler()
    data[numerical_features] = scaler.fit_transform(data[numerical_features])

    selected_features = [
        '1.您的性别○男性   ○女性', '2.您的年级○大一   ○大二   ○大三   ○大四', '3.您的生源地○农村   ○城镇（乡镇）   ○地县级城市  ○省会城市及直辖市', '4.您的月生活费○≦1,000元   ○1,001-2,000元   ○2,001-3,000元   ○≧3,001元',
        '5.您进行过绿色低碳的相关生活方式吗?', '6.您觉得“低碳”，与你的生活关系密切吗？',
        '7.低碳生活是否会成为未来的主流生活方式？', '8.您是否认为低碳生活会提高您的生活质量？'
    ]
    X = data[selected_features]

    # 创建目标变量
    y = data['低碳行为积极性']
    from sklearn.model_selection import train_test_split
    # 数据划分
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

    # 保存处理后的数据
    cleaned_data = pd.concat([X, y], axis=1)
    cleaned_data.to_csv('2.1.2_cleaned_data.csv', index=False)

       序号  所用时间  1.您的性别○男性   ○女性  2.您的年级○大一   ○大二   ○大三   ○大四  \
    0   1  130秒                1                          2.0
    1   2   82秒                1                          2.0
    2   3  230秒                1                          2.0
    3   4   96秒                1                          2.0
    4   6  157秒                1                          2.0

       3.您的生源地○农村   ○城镇（乡镇）   ○地县级城市  ○省会城市及直辖市  \
    0                                       2.0
    1                                       3.0
    2                                       3.0
    3                                       2.0
    4                                       1.0

       4.您的月生活费○≦1,000元   ○1,001-2,000元   ○2,001-3,000元   ○≧3,001元  \
    0                                                2.0
    1                                                2.0
    2                                                2.0
    3                                                2.0
    4                                                2.0

       5.您进行过绿色低碳的相关生活方式吗?  6.您觉得“低碳”，与你的生活关系密切吗？  7.低碳生活是否会成为未来的主流生活方式？  \
    0                  1.0                    1.0                    1.0
    1                  1.0                    1.0                    2.0
    2                  1.0                    1.0                    2.0
    3                  2.0                    2.0                    2.0
    4                  1.0                    1.0                    2.0

       8.您是否认为低碳生活会提高您的生活质量？  ...  我有足够知识进行低碳生活  14.我打算以后…—减少使用一次性产品  合理处理生活中的废弃物  \
    0                      2  ...             5                    4            4
    1                      2  ...             4                    4            3
    2                      3  ...             3                    4            5
    3                      2  ...             2                    2            5
    4                      2  ...             4                    5            5

       在日常生活中会进行垃圾分类  尽可能劝说周围的人进行低碳生活  15.日常生活中，我会......—对垃圾进行分类  重复利用废旧物品  \
    0              3                3                          3         4
    1              4                5                          4         3
    2              3                3                          3         4
    3              2                2                          2         2
    4              5                5                          5         5

       避免使用一次性产品  劝说周围的人进行低碳生活  低碳行为积极性
    0          4             3        0
    1          4             4        0
    2          3             3        0
    3          2             2        0
    4          4             3        0

    [5 rows x 41 columns]
    处理后数据行数: 305, 删除的行数: 13

In [ ]: