【python – 为什么pandas.DataFrame.update会更改更新数据帧的dtypes?】教程文章相关的互联网学习教程文章

python – 在pandas DataFrame中添加一行【代码】

我知道pandas旨在加载完全填充的DataFrame,但我需要创建一个空的DataFrame,然后逐个添加行.做这个的最好方式是什么 ? 我成功创建了一个空的DataFrame:res = DataFrame(columns=('lib', 'qty1', 'qty2'))然后我可以添加一个新行并填充一个字段:res = res.set_value(len(res), 'qty1', 10.0)它工作但似乎很奇怪: – /(它添加字符串值失败) 如何向我的DataFrame添加新行(具有不同的列类型)?解决方法: >>> import pandas as pd >...

python – 从pandas DataFrame中选择部分字符串【代码】

我有一个包含4列的DataFrame,其中2列包含字符串值.我想知道是否有办法根据与特定列的部分字符串匹配来选择行? 换句话说,函数或lambda函数会做类似的事情re.search(pattern, cell_in_question) 返回一个布尔值.我熟悉df [df [‘A’] ==“hello world”]的语法,但似乎无法找到一种方法来对部分字符串匹配说’hello’. 有人能指出我正确的方向吗?解决方法:根据github问题#620,看起来你很快就能做到以下几点:df[df['A'].str.contain...

python – 可以从pandas dataframe迭代【代码】

我需要创建一个可迭代的表单(id,{feature name:features weight})来使用python包. 我的数据存储在一个pandas数据帧中,这里有一个例子:data = pd.DataFrame({"id":[1,2,3],"gender":[1,0,1],"age":[25,23,40]})对于{feature name:features weight})部分,我知道我可以使用这个:fe = data.to_dict(orient='records') Out[28]: [{'age': 25, 'gender': 1, 'id': 1},{'age': 23, 'gender': 0, 'id': 2},{'age': 40, 'gender': 1, '...

python – 将Spark DataFrame写入Parquet时的Py4JError【代码】

试图将PySpark DataFrame df编写为Parquet格式,我得到以下冗长的错误.我很确定代码是正确的,因为在另一个系统上运行它时不会出现错误.任何人都可以帮助诊断吗?df.write.parquet(parquet_path, mode="overwrite") Py4JJavaError Traceback (most recent call last) <ipython-input-52-c778d2347577> in <module>() ----> 1 df.write.parquet(parquet_path, mode="overwrite")/spark/python/pyspark/s...

python – Pandas MultiIndex(超过2个级别)DataFrame到嵌套Dict / JSON【代码】

这个问题类似于this one,但我想更进一步.是否有可能将解决方案扩展到更高级别的工作?多级数据帧’.to_dict()方法有一些很有前景的选项,但是大多数都会返回由元组索引的条目(即(A,0,0):274.0),而不是将它们嵌套在字典中. 有关我要完成的示例,请考虑此多索引数据框:data = {0: {('A', 0, 0): 274.0, ('A', 0, 1): 19.0, ('A', 1, 0): 67.0, ('A', 1, 1): 12.0, ('B', 0, 0): 83.0, ('B', 0, 1): 45.0},1: {('A', 0, 0): 254.0, ('...

python – 合并多个大型DataFrame的有效方法【代码】

假设我有4个小型DataFrame df1,df2,df3和df4import pandas as pd from functools import reduce import numpy as npdf1 = pd.DataFrame([['a', 1, 10], ['a', 2, 20], ['b', 1, 4], ['c', 1, 2], ['e', 2, 10]]) df2 = pd.DataFrame([['a', 1, 15], ['a', 2, 20], ['c', 1, 2]]) df3 = pd.DataFrame([['d', 1, 10], ['e', 2, 20], ['f', 1, 1]]) df4 = pd.DataFrame([['d', 1, 10], ['e', 2, 20], ['f', 1, 15]]) df1.columns ...

python – 使用to_html将CSS类应用于Pandas DataFrame【代码】

我在使用Pandas“to_html”方法应用“classes”参数来设置DataFrame的样式时遇到了麻烦. “classes:str或list或tuple,默认为None要应用于生成的html表的CSS类“来自:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_html.html 我可以像这样呈现样式化的DataFrame(例如):df = pd.DataFrame([[1, 2], [1, 3], [4, 6]], columns=['A', 'B'])myhtml = df.style.set_properties(**{'font-size': '11pt'...

python – 根据索引值的条件选择Pandas DataFrame中的行【代码】

假设我有以下多索引DataFrame:import pandas as pd df = pd.DataFrame({'Index0':[0,1,2,3,4,5],'Index1':[100,200,300,400,500,600],'A':[5,2,5,8,1,2]})现在我想选择Index1小于400的所有行.如果Index1是常规列,每个人都知道它是如何工作的:df[df['Index1'] < 400]因此,一种方法是reset_index,执行选择,然后再次设置索引.这似乎很多余. 我的问题是:有没有办法直接这样做?当DataFrame有行多索引时如何做到这一点?解决方法:最简...

python – 使用DateTimeIndex为随机时间delta值创建empy pandas DataFrame【代码】

我试图创建一个空的DataFrame,然后当数据作为索引到达时,我将不断地使用时间戳追加行. 这是我到目前为止的代码:import pandas as pd import datetime df = pd.DataFrame(columns=['a','b'],index=pd.DatetimeIndex(freq='s')) df.loc[event.get_datetime()] = event.get_data()我遇到的问题是在DateTimeIndex中使用freq,数据没有到达任何预定义的intervalls,当某些事件触发时它是ju.而且在上面的代码中我需要为索引指定一个开始和...

python – pandas DataFrame自己划分列【代码】

我有一个pandas数据框,我填写了这个:import pandas.io.data as web test = web.get_data_yahoo('QQQ')iPython中的数据框如下所示:In [13]: test Out[13]:<class 'pandas.core.frame.DataFrame'>DatetimeIndex: 729 entries, 2010-01-04 00:00:00 to 2012-11-23 00:00:00Data columns:Open 729 non-null valuesHigh 729 non-null valuesLow 729 non-null valuesClose 729 non-null valuesVo...

python – pandas dataframe中max值的索引和列【代码】

我有一个python数据帧df,有五列五行.我想获得最多三个值的行和列名称 例:df = A B C D E F 1 00 01 02 03 04 05 2 06 07 08 09 10 11 3 12 13 14 15 16 17 4 18 19 20 21 22 23 5 24 25 26 27 28 29输出节目说的像[5,F],[5,E],[5,d]解决方法:你可以在排序之前使用unstack:>>> dfA B C D E F 1 0 1 2 3 4 5 2 6 7 8 9 10 11 3 12 13 14 15 16 17 4 18 19 20 21 22 23 5 24 2...

Python数据分析之pandas基本数据结构:Series、DataFrame!【代码】

1引言 本文总结Pandas中两种常用的数据类型: (1)Series是一种一维的带标签数组对象。 (2)DataFrame,二维,Series容器 Python资源共享群:626017123 2 Series数组 2.1 Series数组构成 Series数组对象由两部分构成: 值(value):一维数组的各元素值,是一个ndarray类型数据。 索引(index):与一维数组值一一对应的标签。利用索引,我们可非常方便得在Series数组中进行取值。 如下所示,我们通过字典创建了一个Series数组,...

python – 使用包含列表的列(使用列表填充新行)从现有DataFrame构建新的DataFrame【代码】

我有一个像这样的DataFrame:df = pd.DataFrame({'name': ['toto', 'tata', 'tati'], 'choices': 0}) df['choices'] = df['choices'].astype(object) df['choices'][0] = [1,2,3] df['choices'][1] = [5,4,3,1] df['choices'][2] = [6,3,2,1,5,4]print(df)choices name 0 [1, 2, 3] toto 1 [5, 4, 3, 1] tata 2 [6, 3, 2, 1, 5, 4] tati我想基于这样的df构建一个DataFramechoice rank name 0 ...

python – pandas DataFrame按行和列过滤【代码】

我有一个python pandas DataFrame看起来像这样:A B C ... ZZ 2008-01-01 00 NaN NaN NaN ... 1 2008-01-02 00 NaN NaN NaN ... NaN 2008-01-03 00 NaN NaN 1 ... NaN ... ... ... ... ... ... 2012-12-31 00 NaN 1 NaN ... NaN我无法弄清楚如何获得DataFrame的子集,其中有一个或多个’1′,所以最终的df应该是这样的...

python – 从pandas dataframe index创建列【代码】

我有一个数据框,我想将(索引的第一级)数据转换为一列.实际上我的df看起来像这样:col1 CoI AK 0 11 312 NaN BB 0 51 312 NaN 我想把它变成这样:col1 CoI0 1 AK1 31 AK2 NaN AK0 5 BB1 31 BB2 NaN BB我该怎么做才能做到最好?我认为这是一个相当基本的功能,但与许多其他“基本”熊猫一样,我无法在任何地方找到相关信息. 非常感谢,解决方法:df.reset_index(level = 0,inp...