我正在尝试使用df.apply(min_max, axis=0)
遍历6 x 22列的pandas数据框中的列,并在具有两列的新数据框中获得输出,如下所示。
def min_max(column):
column_names = ['column', 'value']
output = pd.DataFrame(columns = column_names)
output2 = pd.DataFrame([column, abs(column.max() - column.min())])
return output.append(output2)
df显示在所附的img中:first few columns on current dataframe
两个问题:
我收到以下错误:
TypeError :(“ Timedelta类型的对象没有len()”,“在索引日期发生”)
有没有一种方法可以排除所有
不是dtype = int
的列?这会进入功能吗?
很多东西被掩盖了。
答案 0 :(得分:0)
这是一个解决方案:
package com.example.storage;
import com.google.cloud.storage.Blob;
import com.google.cloud.storage.BlobId;
import com.google.cloud.storage.Storage;
import com.google.cloud.storage.StorageOptions;
import com.google.cloud.storage.Blob.BlobSourceOption;
import java.util.Arrays;
import org.apache.commons.codec.binary.Base64;
public class EncodingSample {
public static void main(String... args) throws Exception {
// Instantiates a client
Storage storage = StorageOptions.getDefaultInstance().getService();
Blob blob = storage.get(BlobId.of("your-bucket", "your-object"));
System.out.printf("Data: %s %n", blob.toString());
// Get object content
byte[] content = blob.getContent(BlobSourceOption.generationMatch());
// byte array to string
String s = new String(content);
// Bytes values
System.out.printf("Array: %s %n", Arrays.toString(content));
// Object content in string
System.out.printf("Text: %s %n", s);
// String encoded to Base64
byte[] encodedBytes = Base64.encodeBase64(s.getBytes());
// Base64 bytes
System.out.printf("encodedBytes: %s %n", Arrays.toString(encodedBytes));
// Base64 encoded string
System.out.println("String encoded: " + new String(encodedBytes));
}
}
pandas.DataFrame.select_dtypes
要选择所有数值,请使用numpy.number。