草庐IT

python - 如何使用子图创建 Pandas groupby 图

我有一个这样的数据框:valueidentifier2007-01-010.781611552007-01-010.766152562007-01-010.766152572007-02-010.705615552007-02-010.032134562007-02-010.032134572008-01-010.026512552008-01-010.993124562008-01-010.993124572008-02-010.226420552008-02-010.033860562008-02-010.03386057所以我对每个标识符进行分组:df.groupby('iden

python - 如何在具有大量不同计数且分布不均匀的 Pandas 中绘制 value_counts

假设我有以下数据:s2=pd.Series([1,2,3,4,5,2,3,333,2,123,434,1,2,3,1,11,11,432,3,2,4,3,3,3,54,34,24,2,223,2535334,3,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30000,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2])s2.value_counts(normalize=True).plot()我想在图中显示的是,有几个数字构成了大多数情况。问题是,这将在图表的最左侧看到,然后会有一条直

Python:将小时数添加到 Pandas 时间戳

我将一个csv文件读入pandasdataframedf并得到以下信息:df.columnsIndex([u'TDate',u'Hour',u'SPP'],dtype='object')>>>type(df['TDate'][0])type(df['Hour'][0])>>>type(df['TradingDate'])>>>type(df['Hour'])Hour和TDate列都有100个元素。我想将Hour对应的元素添加到TDate中。我尝试了以下方法:importpandasaspdfromdatetimeimportdate,timedeltaastdz3=pd.Datetim

python - Pandas 获取加载到内存中的所有数据帧的列表

我正在使用pandas将多个csv文件读取到内存中进行处理,有时我想列出我已加载到内存中的所有数据帧。有没有一种简单的方法可以做到这一点?(我在想类似%ls的东西,但只针对我在内存中可用的数据帧) 最佳答案 个人认为this方法要好得多(如果在ipython中)。importpandasaspd%whosDataFrame 关于python-Pandas获取加载到内存中的所有数据帧的列表,我们在StackOverflow上找到一个类似的问题: https://

python pandas dataframe 从其他列的单元格创建新列

我有一个这样的数据框...a_returnb_returnbc_ratioinstrument_holding0NaNNaN-0.165286a10.9964741.013166-0.164637a20.9977300.993540-0.170058a31.0242941.024318-0.184530a41.0190711.047297-0.148644a50.9922431.008210-0.188752a61.0103311.039020-0.098413a70.9895420.9918990.025051b81.0051971.002527-0.025051b90.990755

python - Pandas to_sql() 插入索引

我正在使用Pandas0.18.1,在摆弄这段代码时,importpddefgetIndividualDf(item):var1=[]#...populatethislistofnumbersvar2=[]#...populatethisotherlistofnumbersnewDf=pd.DataFrame({'var1':var1,'var2':var2})newDf['extra_column']=someIntScalaryieldnewDfdfs=[]foriteminsomeList:dfs.append(getIndividualDf(item))resultDf=pd.

python - 从 Pandas 数据框中删除重复的行,其中只有一些列具有相同的值

我有一个Pandas数据框如下:ABC12x12y34z35x我希望只保留1行在特定列中共享相同值的行。在上面的示例中,我指的是A和B列。换句话说,如果A和B列的值在数据框中出现多次,则只应保留一行(哪一行无关紧要)。FWIW:所谓的重复行(即A和B列相同)的最大数量为2。结果应该是这样的:ABC12x34z35x或ABC12y34z35x 最佳答案 使用drop_duplicates使用参数subset,为了仅保留最后重复的行添加keep='last':df1=df.drop_duplicates(subset=['A','B']

python - 如何将 pandas 数据框的第 n 行提取为 pandas 数据框?

假设Pandas数据框如下所示:X_test.head(4)BoxRatioThrustVelocityOnBalRunvwapGain5-0.163-0.8170.7411.7020.21880.0000.0000.7321.7980.307110.417-0.2982.0364.1071.793130.054-0.5741.3232.5531.185如何将第三行(如row3)提取为pd数据框?换句话说,row3.shape应该是(1,5)而row3.head()应该是:0.417-0.2982.0364.1071.793 最佳答案

python - 使用列表从 Pandas 数据框中选择单个值

importnumpyasnpimportpandasaspdind=[0,1,2]cols=['A','B','C']df=pd.DataFrame(np.arange(9).reshape((3,3)),columns=cols)假设你有一个pandas数据框df看起来像:ABC001213452678如果您想从cols中特定索引ind的每一列中捕获单个元素,输出应该看起来像一个系列:A0B4C8到目前为止我尝试过的是:df.loc[ind,cols]这给出了不需要的输出:ABC001213452678有什么建议吗?上下文:下一步是将一个数据帧的df.idxmax()调用的输出映射

python - Pandas 对齐()函数: illustrative example

我遇到了这行代码app_train_poly,app_test_poly=app_train_poly.align(app_test_poly,join='inner',axis=1)此处app_train_poly和app_test_poly是Pandas数据框。我知道使用align()您可以对两个数据帧执行某种组合,但我无法想象它实际上是如何工作的。我搜索了文档,但找不到任何说明性示例。 最佳答案 你走在正确的轨道上,除了DataFrame.align没有组合两个数据帧,而是对齐它们,使两个数据帧具有相同的行和/或列配置。让我们