python怎么提取数据表中的前10行成为一个新的数据框_Python-将数据框内的数据取出到另一个单元中...

This is the data in single cell of dataframe with 14 columns. Cell is the element of column. There are 45k+ this kind of cells, to do it manually is a hell.

I'd like to do with this cell 3 things:

move text part with address, state, zip - to another column;

delete the hooks () of cell;

separate for 2 columns longitude and latitude.

How it's possible to do?

解决方案

Here's a simple, working example with 2 data points:

text1 = """30881 EKLUTNA LAKE RD

CHUGIAK, AK 99567

(61.4478, -149.3136)"""

text2 = """30882 FAKE STR

CHUGIAK, AK 98817

(43.4478, -119.3136)"""

d = {'col1': [text1, text2]}

df = pd.DataFrame(data=d)

def fix(row):

#We split the text by newline

address, cp, latlong = row.col1.split('\n')

#We get the latitude and longitude by splitting by a comma

latlong_vec = latlong[1:-1].split(',')

#This part isn't really necessary but we create the variables for claity

lat = float(latlong_vec[0])

long = float(latlong_vec[1])

return pd.Series([address + ". " + cp, lat, long])

df[['full address', 'lat', 'long']] = df.apply(fix, axis = 1)

Output of the 3 new columns:

df['full address']

0 30881 EKLUTNA LAKE RD. CHUGIAK, AK 99567

1 30882 FAKE STR. CHUGIAK, AK 98817

df['lat']

0 61.4478

1 43.4478

Name: lat, dtype: float64

df['long']

0 -149.3136

1 -119.3136

Name: long, dtype: float64

Name: full address, dtype: object

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页
评论

打赏作者

章王舜

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值