pandas 列 操作 变量转换

import pandas as pd
import numpy
import math

variable conversion

calculate new variable

new variable is constant

‘’’ df[‘var_name’] = name’’’

df1 = pd.read_csv('123.csv',encoding='utf-8')
df1.new_var = 1 # do nothing .only use to var that already exist
df1['cons'] = 1 # right
print(df1.head(10))

operation of vars

‘’’
df[var_name] = df[‘old_var’] * 100
df[var_name] = df.old_var * 100
‘’’

df1['新名次'] = df1['名次'] * 10
print(df1.head(10))

df1['方根'] = round(numpy.sqrt(df1['新名次']),2)
print(df1.head(10))
#下面错误用法
df1['方根2'] =pd.Series(math.sqrt(i) for i in df1['新名次'])#为什么不行?

batch operation

‘’’
df.apply(
func:function or lambda for row or columns
axis = 0 :row or columns ;1 for row

)

df[‘new_name’] = df.oldvar.apply(func)

‘’’

df1['方根2'] = df1['新名次'].apply(math.sqrt)
df1['名次3'] = df1['新名次']
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在pandas中,可以使用get_dummies()函数来创建指示符变量。这个函数接受一个DataFrame或者Series作为输入,并将其中的分类变量转换为指示符变量。 例如,假设我们有一个包含性别和城市的DataFrame: ``` import pandas as pd df = pd.DataFrame({'Gender': ['Male', 'Female', 'Male', 'Male', 'Female'], 'City': ['New York', 'Paris', 'London', 'Paris', 'New York']}) print(df) ``` 输出: ``` Gender City 0 Male New York 1 Female Paris 2 Male London 3 Male Paris 4 Female New York ``` 我们可以使用get_dummies()函数将Gender和City转换为指示符变量: ``` dummies = pd.get_dummies(df[['Gender', 'City']]) print(dummies) ``` 输出: ``` Gender_Female Gender_Male City_London City_New York City_Paris 0 0 1 0 1 0 1 1 0 0 0 1 2 0 1 1 0 0 3 0 1 0 0 1 4 1 0 0 1 0 ``` 可以看到,get_dummies()函数将Gender和City转换为了指示符变量,其中Gender_Female和Gender_Male表示性别的指示符变量,City_London、City_New York和City_Paris表示城市的指示符变量。 ### 回答2: 在Pandas中,创建指示符变量意味着将原始的分类变量转换为二进制的虚拟变量。指示符变量常用于机器学习和统计分析中。以下是创建指示符变量的步骤: 1. 导入必要的库:首先,需要导入pandas库以及可能需要的其他库。 2. 加载数据:从文件或数据库中加载数据,并将其存储在一个Pandas DataFrame中。 3. 选择分类变量:从数据中选择需要转换为指示符的分类变量。可以通过DataFrame的进行选择。 4. 创建指示符变量:使用Pandas的`get_dummies()`函数创建指示符变量。该函数将自动将分类变量转换为虚拟变量,并返回包含指示符变量的新DataFrame。 5. 合并指示符变量:根据需要,可以选择将指示符变量与原始数据合并为一个DataFrame。可以使用Pandas的`concat()`函数进行合并。 6. 删除原始变量:如果不再需要原始的分类变量,可以选择在合并后删除它们。可以使用Pandas的`drop()`函数进行删除。 7. 数据分析或机器学习:现在可以使用新创建的指示符变量数据进行进一步的数据分析或机器学习任务。 需要注意的是,创建指示符变量时,如果分类变量的取值非常多,则可能会导致维度灾难。因此,在使用`get_dummies()`函数之前,需要确保分类变量的取值不会导致过大的稀疏矩阵。 ### 回答3: Pandas是一个开源的数据分析库,可以用于数据清洗、转换和分析。在Pandas中,可以使用get_dummies()函数来创建指示符变量(也称为哑变量或虚拟变量)。 指示符变量是用于表示分类变量的二进制变量。原始的分类变量转换为多个二进制变量,每个变量代表一种类别,其取值为1或0。这样做的目的是使分类变量能够在数值计算中起作用。 要创建指示符变量,首先需要将分类变量转换Pandas的Categorical类型。然后可以使用get_dummies()函数将Categorical类型的变量转换为指示符变量。get_dummies()函数将根据Categorical类型的变量的每个类别创建一个对应的新的取值为1或0,表示该类别的存在与否。 下面是一个示例代码,展示了如何使用Pandas创建指示符变量: ```python import pandas as pd # 创建一个包含分类变量的数据框 data = pd.DataFrame({'color': ['red', 'green', 'blue', 'red', 'green']}) # 将'color'转换为Categorical类型 data['color'] = pd.Categorical(data['color']) # 创建指示符变量 dummy_vars = pd.get_dummies(data['color']) # 将指示符变量添加到原始数据框中 data = pd.concat([data, dummy_vars], axis=1) print(data) ``` 运行以上代码会输出如下结果: ``` color blue green red 0 red 0 0 1 1 green 0 1 0 2 blue 1 0 0 3 red 0 0 1 4 green 0 1 0 ``` 以上就是使用Pandas创建指示符变量的步骤。通过将分类变量转换为指示符变量,我们可以方便地进行分类变量的分析和建模。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值