【python-熊猫:重组DataFrames】教程文章相关的互联网学习教程文章

python – Dataframe pandas如何将列表作为列传递【代码】

我有两个列表,例如:list_columns = ['a','b','c','d','e','f','g','h','k','l','m','n']和一系列价值观list_values = [11,22,33,44,55,66,77,88,99,100, 111, 222]我想使用list_columns作为列创建Pandas数据帧. 我尝试使用df = pd.DataFrame(list_values,columns = list_columns)但它不起作用 我收到此错误:ValueError:传递值的形状是(1,12),索引暗示(12,12)解决方法:数据帧是二维对象.要反映这一点,您需要提供嵌套列表.每个子列...

python – 重塑Pandas Dataframe的最佳方法【代码】

我有一个这样的一维数据帧设置:[A1,B1,C1,A2,B2,C2,A3,B3,C3,A4,B4,C4,A5,B5,C5,A6,B6,C6]在我的程序A1,…中,C6将是从csv读取的数字.我想将它重塑为2d数据帧,如下所示:[A1,B1,C1] [A2,B2,C2] [A3,B3,C3] [A4,B4,C4] [A5,B5,C5] [A6,B6,C6]我可以使用循环来制作它,但它会使程序减慢很多,因为我会多次进行这种转换.以这种方式重塑数据的最佳命令是什么?我查看了一堆重构数据帧问题,但找不到任何具体的内容.提前致谢.解决方法:解析...

python – Pandas’DataFrame’对象没有属性’unique’【代码】

我正在做pandas做数据透视表和做groupby时(计算不同的观察)aggfunc = {“person”:{lambda x:len(x.unique())}}给出了以下错误:‘DataFrame’对象没有属性’unique’ 任何想法如何解决它?解决方法:DataFrames没有该方法; DataFrames中的列:df['A'].unique()或者,获取具有观察数量的名称(使用closedloop给出的DataFrame):>>> df.groupby('person').person.count() Out[80]: person 0 2 1 3 Name: person, dt...

python – pandas Dataframe中的百分比匹配【代码】

是否有一个函数可以告诉pandas DataFrame中匹配的百分比或数量而不执行此类操作…len(trace_df[trace_df['ratio'] > 0]) / len(trace_df) 0.189len(trace_df[trace_df['ratio'] <= 0]) / len(trace_df) 0.811必须有更多的Pythonic或至少优雅的方式来做到这一点.解决方法:找到真实列的百分比的最pythonic方法是简单地取布尔表达式的平均值.(trace_df['ratio'] > 0).mean()

python – 无法在Pandas Dataframe中用零填充NaN【代码】

我有以下问题:我正在阅读一个缺少值的csv文件 pd.read_csv(f_name,sep = sep,header = hdr,parse_dates = True,index_col = date_col,quotechar = quote) 我得到的数据框中有’nan(我正在期待’NaN与Upper案例).现在,如果我尝试使用zerosby替换那些nandf.fillna(0)我的df没有改变(我仍然看到其中的纳米)我的猜测是,fillna无法工作,因为我有nan(小写)而不是NaN(大写).我对么?如果是,您是否知道为什么pd.read.csv返回一个小写nan的...

python – 根据列值删除Pandas中的DataFrame行 – 要删除的多个值【代码】

我有一个值列表(事先不知道,在Python列表中),我的Panda DataFrame中的列不能包含所有行. Web上的所有配方(如this one)都显示了如何只使用一个要排除的值,但我有多个要排除的值.我该怎么做? 请注意,我无法在我的代码中硬编码要排除的值. 谢谢!解决方法:你可以做负isin()索引:In [57]: df Out[57]:a b c 0 1 2 2 1 1 7 0 2 3 7 1 3 3 2 7 4 1 3 1 5 3 4 2 6 0 7 1 7 5 4 3 8 6 1 0 9 3 2 0In [58...

python – 从Pandas dataFrame中删除重复项,条件是保留原始数据【代码】

假设我有以下DataFrame:A | B1 | Ms1 | PhD2 | Ms2 | Bs我想删除关于A列的重复行,并且我想保留B列中值为’PhD’的行作为原始行,如果我没有找到’PhD’,我想保留行B栏中的“B”. 我正在尝试使用df.drop_duplicates('A') 有条件的解决方法: >>> dfA B 0 1 Ms 1 1 Ms 2 1 Ms 3 1 Ms 4 1 PhD 5 2 Ms 6 2 Ms 7 2 Bs 8 2 PhD使用自定义函数对数据框进行排序:def sort_df(df, column_idx, key):'...

python – 如何确定在Pandas DataFrame中将哪些列设置为索引?

假设我有一个金融证券的数据框架,它通常有多个标识符:我应该只选择一列作为索引吗?我应该将所有潜在标识符设置为索引吗?我应该将所有文本数据设置为索引,并将所有数字数据保留为列吗?什么是最佳做法?解决方法:这更多是关于数据库设计而不是熊猫. 决策应基于数据框(关系数据库中的表)及其列的业务含义.例如,如果“内部安全ID”用于识别其业务中的此类数据,则应将其设置为索引. 但是,如果您不确定,请坚持使用默认的整数索引.

python – 使用dask.dataframe从CSV文件中读取分区尾部【代码】

使用Dash,即使在多个分区中,我们也可以轻松读取CSV文件并使用头部获取第一行.import dask.dataframe as dd df = dd.read_csv('data.csv').head(n=100, npartitions=2)但我想在多个分区上阅读我的CSV文件的最后几行,如下所示:import dask.dataframe as dd df = dd.read_csv('data.csv').tail(n=100, npartitions=2)Dask data.frame似乎不支持tail方法上的分区. 在熊猫中,我可以使用跳过来管理它,但是这个选项在Dask中似乎不可用.解...

python – 将List合并到Dataframe中【代码】

忍受我,因为我是python的新手.我正在迭代数据并获得我需要组合成一个pandas数据帧的多个列表. 然后我需要添加标题,以便我可以执行计算. 问题是每个项目都被视为一个单独的实体.请帮忙for r in rows:person_info = list()person_info.append(r['metadata']['name'])person_info.append(r['metadata']['CountryId'])person_info.append(r['metadata']['StateId'])person_info.append(r['metadata']['Income'])print(person_info)这是...

python – Pandas DataFrame列与自定义函数的成对关联【代码】

DataFrame上的Pandas pairwise correlation在很多情况下都很方便.但是,在我的具体情况下,我想使用Pandas不提供的方法(除了(pearson,kendall或spearman)之外的其他方法来关联两列.是否可以明确定义在这种情况下使用的相关函数? 我想要的语法如下:def my_method(x,y): return something frame.corr(method=my_method)解决方法:你需要在cython中为任何类型的perf执行此操作(具有cythonizable功能)l = len(df.columns) results = np....

python – 可以用字符串列创建稀疏的Pandas DataFrame吗?【代码】

是否可以创建一个稀疏的Pandas DataFrame,其中的列都包含浮点数和字符串?即,我有一个数据帧:df2 = pd.DataFrame({'A':[0., 1., 2., 0.], 'B': ['a','b','c','d']}, columns=['A','B'])我想将其转换为稀疏数据帧,但df2.to_sparse(fill_value = 0.)给出:ValueError: could not convert string to float: d有没有办法让这项工作?解决方法:你可以做的是将你的字符串映射到ints / floats并将你的列B映射到他们的dict查找值到一个新的...

python – pandas – 使用外连接的DataFrame扩展【代码】

首先,我是大熊猫的新手,我正在努力倾斜如此彻底的答案将不胜感激. 我想生成一个表示map witter标签suboken的pandas DataFrame – >标签suboken意味着集合{hashtagA} U {i |我在分组(‘_’,hashtagA)}中从表匹配海报 – >鸣叫 例如:In [1]: df = pd.DataFrame([["jim", "i was like #yolo_omg to her"], ["jack", "You are so #yes_omg #best_place_ever"], ["neil", "Yo #rofl_so_funny"]])In [2]: df Out[2]: 0 ...

python – DataFrame.stack()之后的新索引级别名称【代码】

(请注意,this SO question看起来很相似,但不同.) 我有一个MultiIndexed DataFrame,其中的列表示年度数据:>>> x = pd.DataFrame({'country': {0: 4.0, 1: 8.0, 2: 12.0},'series': {0: 553.0, 1: 553.0, 2: 553.0}, '2000': {0: '1100', 1: '28', 2: '120'},'2005': {0: '730', 1: '24', 2: '100'} }).set_index(['country', 'series']) >>> x2000 2005 country series 4 553 1100 730 8 553 28...

python – 实时DataFrame图【代码】

我有一个pandas DataFrame,它在while循环中更新,我想实时绘制这个,但不幸的是我没有得到如何做到这一点.一个samplae代码可能是:import numpy as np from matplotlib import pyplot as plt from matplotlib import animation import time as tm from datetime import datetime, date, time import pandas as pdcolumns = ["A1", "A2", "A3", "A4","A5", "B1", "B2", "B3", "B4", "B5", "prex"] df = pd.DataFrame() """plt.ion()""...