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

如何使用列共享项目的百分比创建新的pandas DataFrame

使用列共享项目的百分比创建新的pandas DataFrame可以通过以下步骤实现:

  1. 导入必要的库:
代码语言:txt
复制
import pandas as pd
  1. 创建原始DataFrame:
代码语言:txt
复制
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
                   'B': [6, 7, 8, 9, 10],
                   'C': [11, 12, 13, 14, 15]})
  1. 计算每列的百分比:
代码语言:txt
复制
total = df.sum()
percentages = df.divide(total) * 100
  1. 创建新的DataFrame:
代码语言:txt
复制
new_df = pd.DataFrame(percentages, columns=['A%', 'B%', 'C%'])

完整的代码如下:

代码语言:txt
复制
import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
                   'B': [6, 7, 8, 9, 10],
                   'C': [11, 12, 13, 14, 15]})

total = df.sum()
percentages = df.divide(total) * 100

new_df = pd.DataFrame(percentages, columns=['A%', 'B%', 'C%'])

这样,你就可以使用列共享项目的百分比创建新的pandas DataFrame了。

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

相关·内容

Pandas 高性能优化小技巧

但是很多新手在使用过程中会发现pandasdataframe性能并不是很高,而且有时候占用大量内存,并且总喜欢将罪名归于Python身上(lll¬ω¬),今天我这里给大家总结了在使用Pandas一些技巧和代码优化方法...在通信方面,Ray 使用共享内存,并且通过 Apache Arrow 实现零拷贝串行化,显著降低了进程之间通信代价。 ?...iterrows或者apply代替直接对dataframe遍历 ---- 用过Pandas都知道直接对dataframe进行遍历是十分低效,当需要对dataframe进行遍历时候我们可以使用迭代器...在底层设计中,pandas按照数据类型将分组形成数据块(blocks)。pandas使用ObjectBlock类来表示包含字符串列数据块,用FloatBlock类来表示包含浮点型数据块。...对于包含数值型数据(比如整型和浮点型)数据块,pandas会合并这些,并把它们存储为一个Numpy数组(ndarray)。Numpy数组是在C数组基础上创建,其值在内存中是连续存储

3K20

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

将添加在末尾。如果要将放在特定位置,则可以使用插入函数。 df_new.insert(0, 'Group', group) df_new ?...method参数指定如何处理具有相同值行。first表示根据它们在数组(即)中顺序对其进行排名。 21.中唯一值数量 使用分类变量时,它很方便。我们可能需要检查唯一类别的数量。...Geography内存消耗减少了近8倍。 24.替换值 替换函数可用于替换DataFrame值。 ? 第一个参数是要替换值,第二个参数是值。 我们可以使用字典进行多次替换。 ?...25.绘制直方图 Pandas不是数据可视化库,但用它创建一些基本图形还是非常简单。 我发现使用Pandas创建基本图比使用其他数据可视化库更容易。 让我们创建Balance直方图。...30.样式化DataFrame 我们可以通过使用Style属性来实现此目的,该属性返回一个styler对象。它提供了许多用于格式化和显示DataFrame选项。

10.7K10
  • Pandas 学习手册中文第二版:11~15

    创建一个DataFrame,其是在步骤 1 中标识标签,然后是两个对象中所有非键标签。 它与两个DataFrame对象值匹配。...然后,它为每组匹配标签在结果​​中创建一行。 然后,它将来自每个源对象那些匹配行中数据复制到结果相应行和中。 它将Int64Index分配给结果。 合并中连接可以使用多个值。...,并将它们旋转到DataFrame中,同时为原始DataFrame适当行和填充了值。...此外,采用这种格式更容易添加变量和度量,因为可以简单地将数据添加为行,而不需要通过添加来更改DataFrame结构。 堆叠数据性能优势 最后,我们将研究为什么要堆叠数据。...然后,我们研究了如何沿行轴和轴连接多个DataFrame对象。 由此,我们随后研究了如何基于多个DataFrame对象中值,使用 Pandas 执行类似于数据库连接和数据合并。

    3.4K20

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

    目录 查看 pandas 及其支持版本 创建 DataFrame 重命名列 反转行序 反转列序 按数据类型选择 把字符串转换为数值 优化 DataFrame 大小 用多个文件建立 DataFrame...查看 pandas 及其支持版本 使用 pd.__version__ 查看 pandas 版本。 ? 查看所有 pandas 支持版本,使用 show_versions 函数。...还可以使用 exclude 关键字排除指定数据类型。 ? 7. 把字符串转换为数值 再创建一个 DataFrame 示例。 ?...把字符串分割为多 创建一个 DataFrame 示例。 ? 把姓名列分为姓与名两,用 str.split() 方法,按空格分割,并用 expand 关键字,生成一个 DataFrame。 ?...本例 DataFrame 加上了标题,交易量使用了迷你条形图。 注意:Pandas 还支持更多 DataFrame 样式选项,详见 pandas 官方文档。

    7.1K20

    Python 数据处理:Pandas使用

    pd.Series([-1.2, -1.5, -1.7], index=['two', 'four', 'five']) frame2['debt'] = val print(frame2) 为不存在赋值会创建出一个...---- 2.基本功能 2.1 重新索引 Pandas对象一个重要方法是reindex,其作用是创建一个对象,它数据符合索引。...向前后向后填充时,填充不准确匹配最大间距(绝对值距离) level 在Multilndex指定级别上匹配简单索引,否则选取其子集 copy 默认为True,无论如何都复制;如果为False,则新旧相等就不复制...将一个或多个名字传递给sort_valuesby选项即可达到该目的: import pandas as pd frame = pd.DataFrame({'b': [4, 7, -3, 2],...无论如何,在计算相关系数之前,所有的数据都会按标签对齐。 ---- 3.2 唯一值、值计数以及成员资格 还有一类方法可以从一维Series值中抽取信息。

    22.7K10

    数据可视化干货:使用pandas和seaborn制作炫酷图表(附代码)

    pandas自身有很多内建方法可以简化从DataFrame和Series对象生成可视化过程。另一个是seaborn,它是由Michael Waskom创建统计图形库。...参数 描述 subplots 将DataFrame每一绘制在独立子图中 sharex 如果subplots=True,则共享相同x轴、刻度和范围 sharey 如果subplots=True,则共享相同...▲图9-19 用错误栏按天显示小费百分比 seaborn中绘图函数使用一个data参数,这个参数可以是pandasDataFrame。其他参数则与列名有关。...▲图9-28 根据星期几数值绘制小费百分比箱型图 你可以使用更通用seaborn.FacetGrid类创建自己分面网格图。 具体请查看更多seaborn文档。...如果是创建用于印刷或网页静态图形,我建议根据你需要使用默认matplotlib以及像pandas和seaborn这样附加库。 对于其他数据可视化要求,学习其他可用工具之一可能是有用

    5.3K40

    Pandas 25 式

    目录 查看 pandas 及其支持版本 创建 DataFrame 重命名列 反转行序 反转列序 按数据类型选择 把字符串转换为数值 优化 DataFrame 大小 用多个文件建立 DataFrame...查看 pandas 及其支持版本 使用 pd.__version__ 查看 pandas 版本。 ? 查看所有 pandas 支持版本,使用 show_versions 函数。...还可以使用 exclude 关键字排除指定数据类型。 ? 7. 把字符串转换为数值 再创建一个 DataFrame 示例。 ?...把字符串分割为多 创建一个 DataFrame 示例。 ? 把姓名列分为姓与名两,用 str.split() 方法,按空格分割,并用 expand 关键字,生成一个 DataFrame。 ?...本例 DataFrame 加上了标题,交易量使用了迷你条形图。 注意:Pandas 还支持更多 DataFrame 样式选项,详见 pandas 官方文档。

    8.4K00

    Pandas 学习手册中文第二版:1~5

    每个人对此列表中目的支持,部署方式以及用户如何使用都各不相同。...数据分析过程 本书主要目的是彻底地教您如何使用 Pandas 来操纵数据。 但是,还有一个次要,也许同样重要目标,是显示 Pandas 如何适应数据分析师/科学家在日常生活中执行过程。...然后,pandasSeries与副本DataFrame对齐,并将其添加为名为RoundedPrice将添加到索引末尾。 .insert()方法可用于在特定位置添加。...如果需要一个带有附加数据帧(保持原来不变),则可以使用pd.concat()函数。 此函数创建一个数据帧,其中所有指定DataFrame对象均按规范顺序连接在一起。...下面的代码创建了一个DataFrame,其中包含了四舍五入价格。

    8.2K10

    Python数据处理禁忌,我们是如何挖坑与踩坑

    pandas 专栏,这些应该是基本操作吧 结果不是那么养眼: "我要是2为小数百分比,这玩意输出 Excel 后,难道还要手工设置格式?"...因为右边表格(红色)范围是数值,而且数值才能正确使用范围匹配等级 自己挖坑自己填,我们需要使用 pandas 格式化功能 ---- pandas 格式化 pandas 本质上只是一个数据处理工具...为此,pandas 设计了格式属性: 行6:自定义函数,指定范围数据表每一行都会进入这个函数,函数返回每个格子格式字符串 行7:number-format:0.00% ,表达就是2位小数百分比...行9:DataFrame.style.apply ,就能执行格式化,参数 subset 是应用格式 划重点: DataFrame.style.apply 之后结果看似像 DataFrame,实际不是...千万别使用结果做各种日常数据操作 因此,你只能在需要输出数据表之前执行格式化操作 现在打开 Excel: 完美,看到百分比只是单元格格式 现在同事处理也轻松: 数字格式化不太常见,更多是日期格式化

    80420

    如何Pandas DataFrame 中插入一

    解决在DataFrame中插入一问题是学习和使用Pandas必要步骤,也是提高数据处理和分析能力关键所在。 在 Pandas DataFrame 中插入一个。...示例 1:插入列作为第一 以下代码显示了如何插入一个列作为现有 DataFrame 第一: import pandas as pd #create DataFrame df = pd.DataFrame...axis=1) print(result) 这里我们使用concat函数将两个DataFrame沿着方向连接,创建了一个DataFrame。...总结: 在Pandas DataFrame中插入一是数据处理和分析重要操作之一。通过本文介绍,我们学会了使用Pandas库在DataFrame中插入。...通过本文,我们希望您现在对在 Pandas DataFrame 中插入方法有了更深了解。这项技能是数据科学和分析工作中基本操作,能够使您更高效地处理和定制您数据。

    59410

    Python 数据分析(PYDA)第三版(四)

    使用 DataFrame 进行索引 希望使用一个或多个 DataFrame 列作为行索引并不罕见;或者,您可能希望将行索引移入 DataFrame 中。...set_index函数将使用一个或多个列作为索引创建一个 DataFrame: In [34]: frame2 = frame.set_index(["c", "d"]) In [35]: frame2...检查连接对象中轴是否存在重复,如果存在则引发异常;默认情况下(False)允许重复 ignore_index 不保留沿着连接axis索引,而是生成一个range(total_length...与在 DataFrame 中将一个转换为多个不同,它将多个合并为一个,生成一个比输入更长 DataFrame。...在 pandas 中,我们可能有多数据,以及行和标签。pandas 本身具有内置方法,简化了从 DataFrame 和 Series 对象创建可视化过程。

    28700

    直观地解释和可视化每个复杂DataFrame操作

    操作数据帧可能很快会成为一复杂任务,因此在Pandas八种技术中均提供了说明,可视化,代码和技巧来记住如何做。 ?...每种方法都将包括说明,可视化,代码以及记住它技巧。 Pivot 透视表将创建一个“透视表”,该透视表将数据中现有投影为元素,包括索引,和值。...可以按照与堆叠相同方式执行堆叠,但是要使用level参数: df.unstack(level = -1)。 Merge 合并两个DataFrame是在共享“键”之间按(水平)组合它们。...例如,考虑使用pandas.concat([df1,df2])串联具有相同列名 两个DataFrame df1 和 df2 : ?...尽管可以通过将axis参数设置为1来使用concat进行列式联接,但是使用联接 会更容易。 请注意,concat是pandas函数,而不是DataFrame之一。

    13.3K20

    【Python】五种Pandas图表美化样式汇总

    Pandas是一种高效数据处理库,它以dataframe和series为基本数据类型,呈现出类似excel二维数据。 在Jupyter中,会美化Pandas输出。...这在Pandas中也是可以实现,而且非常简洁。 ? Pandas提供了DataFrame.style属性,它会返回Styler对象,用以数据样式美化。 ?...如果不想对元素背景高亮处理,也可以直接更改指定元素颜色,从而达到突出重点目的。...Pandas Style方法中也有数据条表达形式,用df.style.bar来实现。 还是用前面人口数据例子,我们来看下如何操作数据条。...这里有好几种常用方法,一是用-符号替代,二是高亮显示 先创建一个带缺失值表,还是用人口数据。

    2.8K30

    你可能不知道pandas5个基本技巧

    between 函数 多年来我一直在SQL中使用“between”函数,但直到最近才在pandas中发现它。 假设我们有一个带有价格DataFrame,我们想要过滤2到4之间价格。...在生成具有预定义顺序报告时,我使用reindex函数。 让我们把t恤尺寸添加到我们数据库里。...分析目的是计算每种尺寸平均价格: df = pd.DataFrame({'price': [1.99, 3, 5], 'size': ['medium', 'large', 'small']})df_avg...通过在reindex函数中指定大小顺序,使得结果更容易解释。 Describe函数 描述函数是进行探索性数据分析时必不可少工具。它显示了DataFrame中所有基本汇总统计信息。...描述函数接受百分比参数。我们可以使用NumPyarange函数指定百分比数,以避免手工输入每个百分比

    1.1K40

    Pandas profiling 生成报告并部署一站式解决方案

    数据集和设置 看下如何启动 pandas_profiling 库并从数据框中生成报告了。...可以将DataFrame对象传递给profiling函数,然后调用创建函数对象以开始生成分析文件。 无论采用哪种方式,都将获得相同输出报告。我正在使用第二种方法为导入农业数据集生成报告。...该Overview包括总体统计。这包括变量数(数据框特征或)、观察数(数据框行)、缺失单元格、缺失单元格百分比、重复行、重复行百分比和内存中总大小。...到目前为止,我们已经了解了如何使用一行代码或函数生成DataFrame报告,以及报告包含所有功能。我们可能有兴趣将此分析导出到外部文件,以便可以将其与其他应用程序集成或将其发布到 Web 上。...对于此元数据,将创建一个名为“dataset”选项卡。

    3.2K10

    使用 Python 进行财务数据分析实战

    然后,它将“收盘价”最后 10 个条目分配给变量 ts,并使用 type(ts) 确定其类型,该变量可能是 pandas Series 对象。...aapl['diff'] = aapl.Open - aapl.Close del aapl['diff'] 这段代码创建一个名为“diff”,该列表示“开盘价”和“收盘价”值之间差异。...首先,对数据进行重新采样,以获取每个月最后一个工作日,并使用lambda函数选择每个月最后一个数据点,创建了名为monthly时间序列。...然后,计算了每个月度数据点之间百分比变化,以显示aapl月度增长或下降。接下来,对原始时间序列重新采样,以计算四个月平均值,创建了名为quarter时间序列。...这些直方图共享相同 x 轴,大小为 12x8 英寸,便于进行比较。 这段代码有效地总结了给定数据集中调整后收盘价每日百分比变化分布。

    41910
    领券