我有一个Pandas DataFrame,我想将’lat’和’long’列组合成一个元组。
<class 'pandas.core.frame.DataFrame'>
Int64Index: 205482 entries, 0 to 209018
Data columns:
Month 205482 non-null values
Reported by 205482 non-null values
Falls within 205482 non-null values
Easting 205482 non-null values
Northing 205482 non-null values
Location 205482 non-null values
Crime type 205482 non-null values
long 205482 non-null values
lat 205482 non-null values
dtypes: float64(4), object(5)
我尝试使用的代码是:
def merge_two_cols(series):
return (series['lat'], series['long'])
sample['lat_long'] = sample.apply(merge_two_cols, axis=1)
但是,这返回以下错误:
---------------------------------------------------------------------------
AssertionError Traceback (most recent call last)
<ipython-input-261-e752e52a96e6> in <module>()
2 return (series['lat'], series['long'])
3
----> 4 sample['lat_long'] = sample.apply(merge_two_cols, axis=1)
5
…
AssertionError: Block shape incompatible with manager
我怎么解决这个问题?
适应吧zip
。在处理列数据时,它很方便。
df['new_col'] = list(zip(df.lat, df.long))
与使用apply
或相比,它不那么复杂且速度更快map
。诸如此类的np.dstack
速度是的两倍zip
,但不会给您元组。
问题内容: 有时,使用熊猫时,我会得到一系列元组/列表。例如,在进行分组并传递具有多个返回值的函数时,这很常见: 什么是“解包”此结构的正确方法,以便获得具有两列的DataFrame? 一个相关的问题是如何将这个结构或生成的数据框解包到两个Series / array对象中。这几乎可以工作: 但这是 而且需要采取额外的措施来挤压它。 问题答案: 也许这是最愚蠢的(我猜是最pythonic): 如果
在Loc vs. iloc vs. ix vs. at vs. iat的答案中选择?例如。 现在我想要所有的栏目,除了“食物”和“高度”。 我认为类似于的东西可以工作,但是Python返回。 我知道有一种解决方法:。然而,在我的现实生活中,我有数百列要删除。键入所有列名是如此低效。 我期待类似于R语言中的或。 还阅读了选择/排除Pandas中的列集。
本文向大家介绍如何更改 pandas dataframe 中两列的位置,包括了如何更改 pandas dataframe 中两列的位置的使用技巧和注意事项,需要的朋友参考一下 如何更改 pandas dataframe 中两列的位置: 把其中的某列移到第一列的位置。 原来的 df 是: 要将 Mid 这一列移动到第一列? 解决办法:(使用 ix ) 法一: 法二: 最终的处理结果: 以上这篇如何更
有谁能帮上忙吗?
问题内容: 我有一个元组列表,例如 我想将它们放入一个熊猫数据框,其中第一行命名为行,第二列命名为列。看来,处理行名称的方法类似,但如何处理列以获得2x2矩阵(前一组的输出为3x4)?是否还有一种更智能的方式来处理行标签,而不是显式地忽略它们? 编辑 似乎我将需要2个数据框-一个用于平均值,一个用于标准差,对吗?还是可以在每个“单元格”中存储值列表? 问题答案: 您可以在创建后旋转DataFram
我正在尝试使用一个函数从pandas数据帧中的多个列计算多个列。该函数接受三个参数-a-、-b-和-c-,并返回三个计算值-sum-、-prod-和-quot-。在我的pandas数据框架中,我有三个列-a-、-b-和-c-我想从中计算列-sum-、-prod-和-quot-。 我所做的映射只有在正好有三行时才起作用。我不知道出了什么问题,尽管我认为这与选择正确的轴有关。有人能解释一下发生了什么,