我试图创建新的列的鱼类物种名称和整数作为值,保持索引做一个dataframe连接后。
import pandas as pd
df = pd.read_csv("fishCounts.csv",index_col=0)
countsdf = df[["Fish Count"]].copy()
countsdf.head()
Fish Count
0 38 Sand Bass, 16 Sculpin, 10 Blacksmith
1 138 Sculpin, 28 Sand Bass
2 150 Sculpin Released, 102 Sculpin, 40 Sanddab
3 156 Sculpin, 29 Sand Bass, 5 Black Croaker, 3 ...
4 161 Sculpin
countsdf.columns = ["fish"]
countsdf.fish = countsdf.fish.str.split(", ", expand=False)
countsdf.head()
fish
0 [38 Sand Bass, 16 Sculpin, 10 Blacksmith]
1 [138 Sculpin, 28 Sand Bass]
2 [150 Sculpin Released, 102 Sculpin, 40 Sanddab]
3 [156 Sculpin, 29 Sand Bass, 5 Black Croaker, 3...
4 [161 Sculpin]
字符串
这就是我不知道该去哪里的地方。遍历数据框行?列一个字典的清单?我是否可以以不同的方式导入数据以使其更容易?
编辑:这就是我想说的。
Sand Bass Sculpin Blacksmith Sculpin Released Sanddab Black Croaker
0 38 16 10
1 28 138
2 102 150 40
3 29 156 5
4 161
型
4条答案
按热度按时间eni9jsuy1#
类似于@Manakin
转
Fish Count
int list字符串
爆炸,以分开每一条鱼与其id
型
创建字典。在这里,我使用列表解析在
Fish Count
中通过数字后面白色分割值之后派生键和值型
结果
型
如果需要,可以打印
型
mfpqipee2#
我们可以使用
str.split
和str.extract
与stack
:字符串
收益率-
型
那么就由你来决定你想要/需要的格式。
即
型
或
型
或
型
你可以把它变成口述。
型
gg58donl3#
首先,你需要分解你所做的列表,然后你可以用正则表达式提取两次,一次匹配数字,然后匹配文本。
有了数据
字符串
执行
型
输出量
型
hzbexzde4#
使用@Manakin的答案来获得这个多索引的 Dataframe :
字符串
然后我重命名了列,去掉了“species”的前导和结尾空格,切换了列顺序,并设置了索引名称。
型
然后我扁平化和重置索引,并删除了B索引。
型
最后,我取消了堆叠并删除了多列索引级别。我有一个空列,我必须删除以及
型