Python中文
首页
教程
问答
标签
搜索
登录
注册
用不均匀长度的列表项创建pandas df列?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个地址列表,我想把它放入一个数据帧中,每一行都是一个新地址,列是地址的单位(标题、街道、城市)。在</p> <p>但是,从列表的结构来看,有些地址比其他地址长。例如:</p> <pre><code>address = ['123 Some Street, City','45 Another Place, PO Box 123, City'] </code></pre> <p>我有一个pandas数据帧,包含以下列:</p> ^{pr2}$ <p>我想根据地址中逗号分隔符的数量,将Address列拆分为至多三个<I>列,并在缺少值的地方填充NaN。在</p> <p>例如,我希望数据如下所示:</p> <pre><code>Index Court Address Address2 City Zip Phone 0 Court 1 123 Court Dr NaN Springfield ... ... 1 Court 2 45 Court Pl PO Box 45 Pawnee ... ... 2 Court 3 1725 Slough Ave NaN Scranton ... ... 3 Court 4 101 Court Ter Unit 321 Eagleton ... ... </code></pre> <p>我在StackOverflow上尝试了大量不同的解决方案,但都没有成功。我得到的最接近的是这个代码:</p> <pre><code>df2 = pd.concat([df, df['Address'].str.split(', ', expand=True)], axis=1) </code></pre> <p>但这将返回一个dataframe,该数据框将以下三个列添加到结构如下的末尾:</p> <pre><code>... 0 1 2 ... 123 Court Dr Springfield None ... 45 Court Pl PO Box 45 Pawnee </code></pre> <p>这很接近,但正如您所见,对于较短的条目,城市将与第二个地址行一起为较长的条目排队。在</p> <p>理想情况下,第2列应该用一个城市填充每一行,第1列应该在“无”和第二个地址行之间交替(如果适用)。在</p> <p>我希望这是有意义的——这是一个难以用语言表达的问题。谢谢!在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你可以这样做:</p> <pre><code>df['Address1'] = df['Address'].str.split(',').str[0] df['Address2'] = df['Address'].str.extract(',(.*),') df['City'] = df['Address'].str.split(',').str[-1] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
VirtualEnvRapper错误:路径python2(来自python=python2)不存在
2 回答
virtualenvs上的pyinstaller,没有名为导入错误的模块
5 回答
virtualenvs是否可以退回到用户包而不是系统包?
2 回答
virtualenvwrapper CentOS7
8 回答
virtualenvwrapper IOError:[Errno 13]权限被拒绝
4 回答
virtualenvwrapper mkproject和shell在windows中的启动问题?
1 回答
virtualenvwrapper mkvirtualenv不工作但没有错误
3 回答
Virtualenvwrapper python bash
3 回答
virtualenvwrapper:“workon”何时更改到项目目录?
5 回答
virtualenvwrapper:mkvirtualenv可以工作,但是rmvirtualenv返回bash:没有这样的文件或目录
8 回答
virtualenvwrapper:virtualenv信息存储在哪里?
7 回答
virtualenvwrapper:命令“python设置.pyegg_info“失败,错误代码为1
5 回答
virtualenvwrapper:如何将mkvirtualenv的默认Python版本/路径更改为ins
5 回答
Virtualenvwrapper:模块“pkg_resources”没有属性“iter_entry_points”
4 回答
Virtualenvwrapper:没有名为virtualenvwrapp的模块
2 回答
Virtualenvwrapper.bash_profi的正确设置
7 回答
Virtualenvwrapper.hook:权限被拒绝
5 回答
virtualenvwrapper.sh:fork:资源暂时不可用Python/Djang
4 回答
Virtualenvwrapper.shlssitepackages命令不工作
6 回答
Virtualenvwrapper.sh函数在bash sh中不可用
8 回答