首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用另一列的内容创建新的pandas dataframe列,但前提是另一列满足某个条件?

要使用另一列的内容创建新的pandas dataframe列,并满足某个条件,可以使用pandas库中的条件判断和赋值操作。

假设我们有一个名为df的pandas dataframe,其中有两列:column1和column2。我们想要根据column1的值创建一个新的列column3,但前提是column2满足某个条件。

可以按照以下步骤实现:

  1. 导入pandas库:
代码语言:txt
复制
import pandas as pd
  1. 创建一个包含column1和column2的字典或列表数据:
代码语言:txt
复制
data = {'column1': [value1, value2, ...], 'column2': [value3, value4, ...]}

这里的value1、value2等表示具体的数据值。

  1. 将字典或列表数据转换为pandas dataframe:
代码语言:txt
复制
df = pd.DataFrame(data)
  1. 使用条件判断和赋值操作创建新的列column3:
代码语言:txt
复制
df['column3'] = df['column1'].apply(lambda x: value_if_true if condition else value_if_false)

这里的value_if_true表示如果column2满足条件,column3所应赋的值;condition表示column2的条件;value_if_false表示如果column2不满足条件,column3所应赋的值。可以根据具体的条件和值进行替换。

  1. 查看新的dataframe:
代码语言:txt
复制
print(df)

请注意,在上述代码中,value_if_true和value_if_false可以是具体的数值、字符串或函数调用等,根据具体情况选择适合的赋值方式。

这是一个基本的答案示例,你可以根据实际需求进行进一步的定制和优化。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Pandas_Study01

DataFrame创建有多种方式,不过最重要还是根据dict进行创建,以及读取csv或者txt文件来创建。 series 相关基本操作 1....['a', 'c'] # 按标签信息,传入行列标签索引信息 获取具体某个数据 df.iat[1, 2] # 按位置信息,传入行列位置信息,获取具体某个数据 # 新版本中pandas中 df 似乎不能使用...# 添加行 df.append(df2) # 添加行,使用append 方法即可 # concat 多连接 # concat函数可以连接多个dataframe数据组成一个更大dataframe...如果参与运算一个DataFrame另一Series,那么pandas会对Series进行行方向广播,然后做相应运算。 4)....如果方向运算,一个dataFrame另一Series,首先将Series沿方向广播,然后运算。

19710

Python科学计算之Pandas

我们也可以使用这些条件表达式来过滤一个已知dataframe。 ? 这将返回一个仅仅包含9、10月降雨量低于1000mm条目的dataframe。 ?...对数据集应用函数 有时候你会想以某些方式改变或是操作你数据集中数据。例如,如果你有一年份数据而你希望创建一个显示这些年份所对应年代。...Pandas对此给出了两个非常有用函数,apply和applymap。 ? 这会创建一个名为‘year‘。这一由’water_year’所导出。它获取主年份。...这便是使用apply方法,即如何对一应用一个函数。如果你想对整个数据集应用某个函数,你可以使用dataset.applymap()。...操作一个数据集结构 另一件经常会对dataframe所做操作是为了让它们呈现出一种更便于使用形式而对它们进行重构。 首先,groupby: ? grouby所做将你所选择组成一组。

2.9K00
  • Pandas用了一年,这3个函数我最最爱……

    导读 作为一名数据分析师,也是Pandas重度依赖者,虽然其提供了大量便利接口,其中这3个却使用频率更高!...01 assign 在数据分析处理中,赋值产生是非常高频应用场景,简单可能赋值常数列、复杂可能由一产生另外一个一,对于这种需求pandas有多种方法实现,个人唯独喜欢assign,...注意事项: assign赋值时,一般用列名=表达式形式,其中新列名为变量形式,所以不加引号(加引号时意味着字符串); assign返回创建dataframe,所以需要用dataframe...另一方面,pandas中实际上内置了大量SQL类语法(包括下面要介绍query也是),而eval功能正是执行类似SQL语法中计算,对已知执行一定计算时可用eval完成。...尤其query也是类似于SQL中where关键字语法逻辑,用起来会很顺滑。 ? 例如对于以上dataframe,需要根据不同场景查询满足条件记录,调用query实现方式为: ?

    1.9K30

    PySpark︱DataFrame操作指南:增删改查合并统计与数据处理

    笔者最近需要使用pyspark进行数据整理,于是乎给自己整理一份使用指南。pyspark.dataframepandas差别还是挺大。...)联合使用: 那么:当满足条件condition指赋值为values1,不满足条件则赋值为values2....— 2.2 新增数据 withColumn— withColumn通过添加或替换与现有列有相同名字,返回一个DataFrame result3.withColumn('label', 0)...,然后生成多行,这时可以使用explode方法   下面代码中,根据c3字段中空格将字段内容进行分割,分割内容存储在字段c3_中,如下所示 jdbcDF.explode( "c3" , "c3...; Pyspark DataFrame数据反映比较缓慢,没有Pandas那么及时反映; Pyspark DataFrame数据框不可变,不能任意添加,只能通过合并进行; pandas比Pyspark

    30.4K10

    超全pandas数据分析常用函数总结:下篇

    5.6 切割数据 对date字段值依次进行分列,并创建数据表,索引值为data索引,列名称为year\month\day。...6.2.5 用iloc取连续多行和多 提取第3行到第6行,第4到第5值,取得行和交叉点位置。 data.iloc[2:6,3:5] 输出结果: ?...数据筛选 7.1 使用与、或、非进行筛选 将满足originChina且money小于35这两个条件数据,返回其id、date、money、product、department、origin值。...将满足originChina或者money小于35这两个条件之中任意一个条件数据,返回其id、date、money、product、department、origin值。...将满足originChina且money不小于10这两个条件数据,返回其id、date、money、product、department、origin值。

    4.9K20

    超全pandas数据分析常用函数总结:下篇

    5.6 切割数据 对date字段值依次进行分列,并创建数据表,索引值为data索引,列名称为year\month\day。...6.2.5 用iloc取连续多行和多 提取第3行到第6行,第4到第5值,取得行和交叉点位置。 data.iloc[2:6,3:5] 输出结果: ?...数据筛选 7.1 使用与、或、非进行筛选 将满足originChina且money小于35这两个条件数据,返回其id、date、money、product、department、origin值。...将满足originChina或者money小于35这两个条件之中任意一个条件数据,返回其id、date、money、product、department、origin值。...将满足originChina且money不小于10这两个条件数据,返回其id、date、money、product、department、origin值。

    3.9K20

    10个快速入门Query函数使用Pandas查询示例

    ) 它是一个简单9999 x 12数据集,使用Faker创建,我在最后也会提供本文所有源代码。...在开始之前,先快速回顾一下pandas -中查询函数query。查询函数用于根据指定表达式提取记录,并返回一个DataFrame。表达式用字符串形式表示条件条件组合。...在后端pandas使用eval()函数对该表达式进行解析和求值,并返回表达式被求值为TRUE数据子集或记录。所以要过滤pandas DataFrame,需要做就是在查询函数中指定条件即可。...== 182") 它返回满足两个条件任意一个条件所有。...请Query()表达式已经字符串。那么如何另一个字符串中写一个字符串?将文本值包装在单个引号“”中,就可以了。

    4.4K20

    10快速入门Query函数使用Pandas查询示例

    () 它是一个简单9999 x 12数据集,使用Faker创建,我在最后也会提供本文所有源代码。...在开始之前,先快速回顾一下pandas -中查询函数query。查询函数用于根据指定表达式提取记录,并返回一个DataFrame。表达式用字符串形式表示条件条件组合。...所以要过滤pandas DataFrame,需要做就是在查询函数中指定条件即可。 使用单一条件进行过滤 在单个条件下进行过滤时,在Query()函数中表达式仅包含一个条件。...== 182") 它返回满足两个条件任意一个条件所有。...请Query()表达式已经字符串。那么如何另一个字符串中写一个字符串?

    4.5K10

    【呕心总结】python如何与mysql实现交互及常用sql语句

    ,我用 pandas dataframe 结构。...pd.io.sql.to_sql() 参数还有许多其它用途,上面这种我个人使用最高频。效果:无需自己提前建表,将自动建表。美中不足:表属性自动生成,通常不合心意,还需检查和修改。...情境B:python 脚本想从 mysql 拿到数据 如果已经存在某个表格,想要向该表格提交某条指令,需返回数据,我用 pandasread_sql () ,返回数据类型 pandas dataframe...仅返回符合条件数据个数: SELECT count(*) FROM table_name ; ? 变量B:条件指,期望返回数据满足哪些条件。...属性包括:类型,最大长度,是否为空,默认值,是否重复,是否为索引。通常,直接通过 pandas pd.io.sql.to_sql() 一次性创建表格并保存数据时,默认属性并不合需求。

    3K21

    整理了10个经典Pandas数据查询案例

    9999 x 12数据集,使用Faker创建,我在最后也会提供本文所有源代码。...在开始之前,先快速回顾一下Pandas查询函数query。查询函数用于根据指定表达式提取记录,并返回一个DataFrame。表达式用字符串形式表示条件条件组合。...PANDASDATAFRAME(.loc和.iloc)属性用于根据行和标签和索引提取数据集子集。因此,它并不具备查询灵活性。...在后端Pandas使用eval()函数对该表达式进行解析和求值,并返回表达式被求值为TRUE数据子集或记录。所以要过滤PandasDataFrame,需要做就是在查询函数中指定条件即可。...请query()表达式已经字符串。那么如何另一个字符串中写一个字符串?将文本值包装在单个引号“”中,就可以了。

    22620

    30 个小例子帮你快速掌握Pandas

    让我们做另一使用索引而不是标签示例。 df.iloc [missing_index,-1] = np.nan "-1"最后一Exit索引。...重设索引,原始索引保留为。我们可以在重置索引时将其删除。...将添加在末尾。如果要将放在特定位置,则可以使用插入函数。 df_new.insert(0, 'Group', group) df_new ?...Geography内存消耗减少了近8倍。 24.替换值 替换函数可用于替换DataFrame值。 ? 第一个参数要替换值,第二个参数值。 我们可以使用字典进行多次替换。 ?...25.绘制直方图 Pandas不是数据可视化库,用它创建一些基本图形还是非常简单。 我发现使用Pandas创建基本图比使用其他数据可视化库更容易。 让我们创建Balance直方图。

    10.7K10

    Python 数据处理:Pandas使用

    本文内容:Python 数据处理:Pandas使用 ---- Python 数据处理:Pandas使用 1.Pandas 数据结构 1.1 Series 1.2 DataFrame 2.基本功能...虽然 Pandas 采用了大量 NumPy 编码风格,二者最大不同是 Pandas 专门为处理表格和混杂数据设计。而 NumPy 更适合处理统一数值数组数据。...创建DataFrame办法有很多,最常用一种直接传入一个由等长列表或 NumPy 数组组成字典: import pandas as pd data = {'state': ['Ohio',...另一种常见数据形式嵌套字典,如果嵌套字典传给DataFramePandas 就会被解释为:外层字典键作为,内层键则作为行索引: import pandas as pd pop1 = {'...---- 2.基本功能 2.1 重新索引 Pandas对象一个重要方法reindex,其作用是创建一个对象,它数据符合索引。

    22.7K10

    (数据科学学习手札92)利用query()与eval()优化pandas代码

    ,很多初学者喜欢在计算过程中创建一堆命名随心所欲中间变量,一方面使得代码读起来费劲,另一方面越多不必要中间变量意味着越高内存占用,越多计算资源消耗。   ...图3   通过比较可以发现在使用query()时我们在不需要重复书写数据框名称[字段名]这样内容,字段名也直接可以当作变量使用,而且不同条件之间不需要用括号隔开,在条件繁杂时候简化代码效果更为明显...而pandaseval()有两种,一种top-level级别的eval()函数,而另一针对数据框DataFrame.eval(),我们接下来要介绍后者,其与query()有很多相同之处,...、排序,其中关键新增当月数量在全部记录排名字段,如果不用eval(),你无法在不创建中间变量前提下如此简洁地完成需求: netflix.eval(''' years_to_now...图15   使用query()+eval(),升华pandas数据分析操作。 ----   以上就是本文全部内容,欢迎在评论区与我讨论~

    1.7K20

    整理了10个经典Pandas数据查询案例

    9999 x 12数据集,使用Faker创建,我在最后也会提供本文所有源代码。...在开始之前,先快速回顾一下Pandas查询函数query。查询函数用于根据指定表达式提取记录,并返回一个DataFrame。表达式用字符串形式表示条件条件组合。...PANDASDATAFRAME(.loc和.iloc)属性用于根据行和标签和索引提取数据集子集。因此,它并不具备查询灵活性。...在后端Pandas使用eval()函数对该表达式进行解析和求值,并返回表达式被求值为TRUE数据子集或记录。所以要过滤PandasDataFrame,需要做就是在查询函数中指定条件即可。...请query()表达式已经字符串。那么如何另一个字符串中写一个字符串?将文本值包装在单个引号“”中,就可以了。

    3.9K20

    利用query()与eval()优化pandas代码

    简介 利用pandas进行数据分析过程,不仅仅是计算出结果那么简单,很多初学者喜欢在计算过程中创建一堆命名「随心所欲」中间变量,一方面使得代码读起来费劲,另一方面越多不必要中间变量意味着越高内存占用...本文就将带大家学习如何pandas中化繁为简,利用query()和eval()来实现高效简洁数据查询与运算。...TV」 ❞ 图3 通过比较可以发现在使用query()时我们在不需要重复书写数据框名称[字段名]这样内容,字段名也直接可以当作变量使用,而且不同条件之间不需要用括号隔开,在条件繁杂时候简化代码效果更为明显...而pandaseval()有两种,一种top-level级别的eval()函数,而另一针对数据框DataFrame.eval(),我们接下来要介绍后者,其与query()有很多相同之处,...、排序,其中关键「新增当月数量在全部记录排名字段」,如果不用eval(),你无法在「不创建中间变量」前提下如此简洁地完成需求: netflix.eval(''' years_to_now

    1.5K30

    python数据科学系列:pandas入门详细教程

    这里提到了index和columns分别代表行标签和标签,就不得不提到pandas另一个数据结构:Index,例如series中标签dataframe中行标签和标签均属于这种数据结构。...isin/notin,条件范围查询,即根据特定值是否存在于指定列表返回相应结果 where,仍然执行条件查询,但会返回全部结果,只是将不满足匹配条件结果赋值为NaN或其他指定值,可用于筛选或屏蔽值...query,按dataframe执行条件查询,一般可用常规条件查询替代 ?...ix,可混合使用标签和数字索引,往往容易混乱,所以现已弃用 05 数据处理 ?...,可通过axis参数设置按行删除还是按删除 替换,replace,非常强大功能,对series或dataframe中每个元素执行按条件替换操作,还可开启正则表达式功能 2 数值计算 由于pandas

    13.9K20

    Pandas之实用手册

    本篇通过总结一些最最常用Pandas在具体场景实战。在开始实战之前。一开始我将对初次接触Pandas同学们,一分钟介绍Pandas主要内容。...pandas 核心名叫DataFrame对象类型- 本质上一个值表,每行和每都有一个标签。...用read_csv加载这个包含来自音乐流服务数据基本 CSV 文件:df = pandas.read_csv('music.csv')现在变量df pandas DataFrame:1.2 选择我们可以使用其标签选择任何...最简单方法删除缺少值行:fillna()另一种方法使用(例如,使用 0)填充缺失值。1.5 分组使用特定条件对行进行分组并聚合其数据时。...1.6 从现有创建通常在数据分析过程中,发现需要从现有创建Pandas轻松做到。

    18410

    数据分析篇 | PyCon 大咖亲传 pandas 25 式,长文建议收藏

    创建 DataFrame 创建 DataFrame 方式有很多,比如,可以把字典传递给 DataFrame 构建器,字典 Key 列名,字典 Value 为列表, DataFrame 值...这里要注意,字符串里字符数量必须与 DataFrame 数一致。 3. 重命名列 ? 用点(.)选择 pandas写起来比较容易,列名里有空格,就没法这样操作了。...还可以使用 exclude 关键字排除指定数据类型。 ? 7. 把字符串转换为数值 再创建一个 DataFrame 示例。 ?...把字符串分割为多 创建一个 DataFrame 示例。 ? 把姓名列分为姓与名两,用 str.split() 方法,按空格分割,并用 expand 关键字,生成一个 DataFrame。 ?...设置 DataFrame 样式 上面的技巧适用于调整整个 Jupyter Notebook 显示内容。 不过,要想为某个 DataFrame 设定指定样式,pandas 还提供了更灵活方式。

    7.1K20

    整理了25个Pandas实用技巧

    神奇pandas已经将第一作为索引了: ? 需要注意,如果你想要你工作在未来可复制,那么read_clipboard()并不值得推荐。...一个字符串划分成多 我们先创建另一示例DataFrame: ? 如果我们需要将“name”这一划分为三个独立,用来表示first, middle, last name呢?...如果我们只想保留第0作为city name,我们仅需要选择那一并保存至DataFrame: ? Series扩展成DataFrame 让我们创建一个示例DataFrame: ?...通过使用concat()函数,我们可以将原来DataFrameDataFrame组合起来: ?...但是,一个更灵活和有用方法定义特定DataFrame格式化(style)。 让我们回到stocks这个DataFrame: ? 我们可以创建一个格式化字符串字典,用于对每一进行格式化。

    2.8K40

    整理了 25 个 Pandas 实用技巧,拿走不谢!

    你可以查看到Python,pandas, Numpy, matplotlib等版本信息。 2. 创建示例DataFrame 假设你需要创建一个示例DataFrame。...更改列名 让我们来看一下刚才我们创建示例DataFrame: ? 我更喜欢在选取pandas时候使用点(.),但是这对那么列名中含有空格不会生效。让我们来修复这个问题。...你可以对前两使用astype()函数: ? 但是,如果你对第三使用这个函数,将会引起错误,这是因为这一包含了破折号(用来表示0)但是pandas并不知道如何处理它。...将一个字符串划分成多个 我们先创建另一示例DataFrame: ? 如果我们需要将“name”这一划分为三个独立,用来表示first, middle, last name呢?...将一个由列表组成Series扩展成DataFrame 让我们创建一个示例DataFrame: ? 这里有两,第二包含了Python中由整数元素组成列表。

    3.2K10
    领券