小编Bel*_*a92的帖子

如何合并数据框中的行与不同的列?

我想将数据帧的行与一个公共列值合并,然后合并用逗号分隔的其余列值作为字符串值,并转换为数组/列表以获取int值。

A   B     C    D
1  one   100  value
4  four  400  value
5  five  500  value
2  two   200  value
Run Code Online (Sandbox Code Playgroud)

预期结果如下:

   A                B                 C            D
[1,4,5,2]  one,four,five,two  [100,400,500,200]  value
Run Code Online (Sandbox Code Playgroud)

我可以对D列使用groupby,但是如何一次在df中将apply作为列的apply(np.array)和apply(','。join)应用于A,C列呢?

python dataframe pandas pandas-groupby

5
推荐指数
1
解决办法
58
查看次数

使用流比较地图时如何处理空值 - Java?

我有 2 个数据结构,其值如下:

List<Map<String,String>> customerDirectory
Run Code Online (Sandbox Code Playgroud)
[{NAME=ALEX BENSON, PHONE=012-12342, ADDRESS=123 MAIN ST, CITY=QUEENS, STATE=NY},
 {NAME=ZOYE ABEL, PHONE=012-12445, ADDRESS=123 WATERSIDE, CITY=WINDSOR, STATE=CT}]
Run Code Online (Sandbox Code Playgroud)

Map<String,String> customerInfo
Run Code Online (Sandbox Code Playgroud)
{NAME=ALEX BENSON, PHONE=012-12342, ADDRESS=123 MAIN ST}
Run Code Online (Sandbox Code Playgroud)

我正在尝试遍历customerDirectory以查找customerInfo键值是否完全匹配 -"NAME","PHONE","ADDRESS"以便我可以找到记录是否重复。

所以我想出了:

List<String> compareKeys = Arrays.asList("NAME","PHONE","ADDRESS");

Function<Map<String,String>, String> getVal = mp -> compareKeys.stream().map(mp::get).map(String::trim).collect(Collectors.joining());

BiPredicate<Map<String,String>, Map<String,String>> checkDup = (mp1,mp2) -> getVal.apply(mp1).equals(getVal.apply(mp2));

boolean anyMatch = customerDirectory.stream().anyMatch(customer-> checkDup.test(customerInfo, customer));
Run Code Online (Sandbox Code Playgroud)

但是customerInfo地图可以是有价值ADDRESSnull,对此我曾尝试:

BiFunction<Map<String, String>, String, String> handleNull = (mp, key) -> mp.get(key) == …
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

3
推荐指数
1
解决办法
187
查看次数

计算列表列表中字符串的出现次数

我想计算一个字符串在另一个列表中出现的次数,并将其存储在字典列表中,其中每个字典都有一个列表的计数。前任,

list = [['Sam','John','Alex','Sam','Alex'],['Max','Sam','Max']...]
Run Code Online (Sandbox Code Playgroud)

我希望我的字典列表如下:

count_list = [{'Sam':2,'Alex':2,'John':1}, {'Max':2, 'Sam':1}..] 
Run Code Online (Sandbox Code Playgroud)

我正在迭代每个列表以计算每个字符串出现的次数并将每个结果添加到字典中。但我最终每次都会得到不同的结果,而不是正确的值。

count_list = [{'Sam':2,'Alex':2,'John':1}, {'Max':2, 'Sam':1}..] 
Run Code Online (Sandbox Code Playgroud)

任何帮助都会有用。谢谢。

python dictionary nested-lists

1
推荐指数
1
解决办法
1894
查看次数

是否可以在 sklearn 管道中更改 Pandas 列数据类型?

我使用的 Sklearn 管道有多个转换器,但初始转换器之一返回数字类型,而连续的转换器采用对象类型变量。

基本上我需要挤进一个:

data[col] = data[col].astype(object)
Run Code Online (Sandbox Code Playgroud)

对于管道中所需的列。

有什么办法吗?

注意:我正在使用功能引擎转换器。

machine-learning scikit-learn sklearn-pandas

1
推荐指数
1
解决办法
969
查看次数

仅从python中的列表列表中提取相关信息

我有一个包含字符串子列表的列表。

喜欢

info = [['Price: 5000', 'In warranty', 'Weight: 8 kg'], 

['Refundable', 'Price: 2800', 'Weight: 5.5 kg', 'Extra battery power'], 

['Price: 9000', 'Non-exchangeable', 'Weight: 8 kg', 'High-Quality']..]
Run Code Online (Sandbox Code Playgroud)

每个子列表都有一些无关紧要的额外字符串。我只需要在子列表中准确描述产品信息的 5 个值,并且这 5 个值中的每一个都有自己的关键字。

使用关键字从子列表中提取有用字符串并丢弃其余字符串的方法是什么?在上面的示例中,我只想保留“价格”、“重量”。

python

0
推荐指数
1
解决办法
2760
查看次数